Comunidad de diseño web y desarrollo en internet online

PHP + Flex ( sobre las conferencias)

Citar            
MensajeEscrito el 13 May 2006 10:22 am
bien, aqui un problema que encontre cuando estaba haciendo lo quehicieron en las conferencias ( que me perdi sigth :cry: ) aqui esta el codigo php que tengo en mi archivo calificaciones.php

Código :

<?
function conectar($consulta){
  include("configuracion.php");
  $dbh=mysql_connect($host,$usuario,$pass) or die ("No me puedo conectar :( ");
  mysql_select_db($db);
  $resultado=mysql_query($consulta,$dbh);
  mysql_close($dbh);
  return $resultado;
}
$nombre=$_GET['nombre'];
$sql = "SELECT * FROM `alumnos` WHERE nombre LIKE '".$nombre."'";
$id=conectar($sql);
$c=0;
while( $calif[$c] = mysql_fetch_assoc($id) ){
  $c++;
}
mysql_free_result($id);
?>
<? echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"; ?>
<rsp stat="ok">
  <calificaciones total="<? echo ($c); ?>">
<? for($i=0;$i<$c;$i++){
?>
    <estudiante id="<? echo $calif[$i]['id']; ?>" nombre="<? echo $calif[$i]['nombre']; ?>" calificacion="<? echo $calif[$i]['calificacion']; ?>"></estudiante>
<? } ?>
  </calificaciones>
</rsp>

ok el codigo "funciona" pero creo que tengo algo mal porque en realidad no puedo ver en el navegador el arbol xml cuando entro a http://127.0.0.1/lab/php/calificaciones.php?nombre=%
que es la url donde tengo mi archivo, puedo ver que se imprime esto

Código :

<?xml version="1.0" encoding="utf-8"?>
<rsp stat="ok">
  <calificaciones total="6">
    <estudiante id="1" nombre="jaime" calificacion="50"></estudiante>
    <estudiante id="2" nombre="chicho" calificacion="10"></estudiante>
    <estudiante id="3" nombre="jose" calificacion="100"></estudiante>
    <estudiante id="4" nombre="pacho" calificacion="70"></estudiante>
    <estudiante id="5" nombre="erik" calificacion="40"></estudiante>
    <estudiante id="6" nombre="cerote" calificacion="20"></estudiante>
  </calificaciones>
</rsp>

que eso si es xml pero solo puedo verlo cuando veo elcodigo fuente de la pagina, no se que tendre mal o no se si cuando entre a calificaciones.php forzosamente el arbol xml debe ser desplegado en el navegador.
ahora bin otro tema en Flex, cuando trato de conectarme con mi archivo calificaciones.php a traves de HTTPService, el metodo result del HTTPService no me lo reconoce, no se si esto se deba a que no estoy trabajando con eclipse o a que la verson que tengo es la beta 3 de flex, si alguien tiene la respuesta seria exelente.
va Clab eso es todo por lo pronto saludos.[/code]

Por jaimoco

299 de clabLevel



Genero:Masculino  

choya bay , mexico

firefox
Citar            
MensajeEscrito el 01 Jun 2006 01:58 am
Prueba el servicio así (sólo debes cambiar los parámetros de conexión a la base de datos):

Código :

<?php 
/* Conecta a la base de datos */
function plugClab($consulta) {
   $db = "flexservicedatabase";
   $user = "root";
   $pass = "yourpassword";
   $server = "localhost";
   /* Conectar a la base de datos */
   $dbh = mysql_connect($server, $user, $pass) or die("I cannot connect to database because: ".mysql_error());
   // Seleccionar la base de datos:
   mysql_select_db($db);
   /* Guardar el resultado en un puntero */
   $resultado = mysql_query($consulta, $dbh);
   mysql_close($dbh);
   /* Retorna lo obtenido */
   return $resultado;
}

$sql = "SELECT * FROM calificaciones WHERE nombre LIKE '".$_GET["nombre"]."'";
//$sql = "SELECT * FROM calificaciones";
$id = plugClab($sql);
$c = 0;
while($calif[$c] = mysql_fetch_assoc($id)) {
   $c++;
}
mysql_free_result($id);
header('Content-type: text/xml; charset=utf-8');
?>
<?php echo "<?"; ?>xml version="1.0" encoding="utf-8" ?>
<rsp stat="ok">
   <calificaciones total="<?php echo ($c); ?>">
<?php
for($i=0;$i<$c;$i++) {
?>
      <estudiante id="<?php echo $calif[$i]["id"]; ?>" nombre="<?php echo $calif[$i]["nombre"]; ?>" email="<?php echo $calif[$i]["email"]; ?>" calificacion="<?php echo $calif[$i]["calificacion"]; ?>" />
<?php 
}
?>
   </calificaciones>
</rsp>


Así lo usó Freddie en la Conferencia. Saludos.

Por EdilbertoO

23 de clabLevel



Genero:Masculino  

Colombia

firefox
Citar            
MensajeEscrito el 06 Jun 2006 07:37 am
hola, yo tambien tengo el mismo problema con el http services, no reconoce el parametro result, ojala pudieran auxiliar con ese pequeño problema muchas gracias y buen dia.

Por mandrake07

13 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 06 Jun 2006 07:56 pm
result ya no existe, ahora es lastResult

Por Zandy

Claber

1345 de clabLevel

5 tutoriales

Genero:Masculino   Premio_Secretos

firefox
Citar            
MensajeEscrito el 07 Jun 2006 03:15 pm
muchas gracias por el tip, ya m iaplicacion esta correcta pero a la hora de correr la aplicacion en mi navegador, me sale esta ventana cuando le doy click am i boton buscar

[RPC Fault faultString="Security error accessing url" faultCode="Channel.Security.Error" faultDetail="Destination: DefaultHTTP"]
at mx.rpc::AbstractInvoker/http://www.adobe.com/2006/flex/mx/internal::faultHandler()
at mx.rpc::Responder/fault()
at mx.rpc::AsyncRequest/fault()
at ::DirectHTTPMessageResponder/securityErrorHandler()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/flash.net:URLLoader::redirectEvent()


si pruebo el php solo en el navegador, calificaciones.php, si sale todo bien, pero cuando le doy RUN a flex y veo mi proyecto en le navegador mesale esa leyenda no se porque..... si ya cambie el Result por el LastResult....

Muchas gracias..

Por mandrake07

13 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 08 Jun 2006 11:24 pm

Por EdilbertoO

23 de clabLevel



Genero:Masculino  

Colombia

firefox
Citar            
MensajeEscrito el 21 Jun 2007 06:07 pm
En un hilo anterior estuve poniendo el codigo con el que probaba, decidi hacerlo todo de nuevo incluso un xml hecho a mano y no dinamicamente

el link del xml es
http://www.mariareinamarianistas.net/flex/notas.xml

e código que estoy utilizando es el siguiente:



Código :

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="conexion.send()">
<mx:HTTPService 
   url="http://www.mariareinamarianistas.net/flex/notas.xml" 
   useProxy="true" 
   id="conexion"  
   method="GET" />
   <mx:DataGrid x="10" y="36" width="455" height="290" dataProvider="{conexion.lastResult.registros.registro}">
      <mx:columns>
         <mx:DataGridColumn headerText="Código" dataField="alumno_id"/>
         <mx:DataGridColumn headerText="Nombres" dataField="alumno"/>
         <mx:DataGridColumn headerText="nota" dataField="nota"/>
      </mx:columns>
   </mx:DataGrid>
   
</mx:Application>


y el error que obtengo es el siguiente:

Código :

[RPC Fault faultString="[MessagingError message='Unknown destination 'DefaultHTTP'.']" faultCode="InvokeFailed" faultDetail="Couldn't establish a connection to 'DefaultHTTP'"]
   at mx.rpc::AbstractInvoker/http://www.adobe.com/2006/flex/mx/internal::invoke()
   at mx.rpc.http.mxml::HTTPService/http://www.adobe.com/2006/flex/mx/internal::invoke()
   at mx.rpc.http::HTTPService/send()
   at mx.rpc.http.mxml::HTTPService/send()
   at Registros/___Application1_creationComplete()
   at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction()
   at flash.events::EventDispatcher/dispatchEvent()
   at mx.core::UIComponent/set initialized()
   at mx.managers::LayoutManager/::doPhasedInstantiation()
   at Function/http://adobe.com/AS3/2006/builtin::apply()
   at mx.core::UIComponent/::callLaterDispatcher2()
   at mx.core::UIComponent/::callLaterDispatcher()



Gracias de antemanto x la ayuda

saludos

Pinocho

P.D.
si no obtengo resultado mataré al que me enseñó flex

Por pinocho

78 de clabLevel



Genero:Masculino  

Luna City

firefox
Citar            
MensajeEscrito el 21 Jun 2007 09:45 pm
Eyyy !!!

ya resolví lo del bendito error ese:

Código :

RPC Fault faultString="[MessagingError message='Unknown destination 'DefaultHTTP'.']" 
faultCode="InvokeFailed" faultDetail="Couldn't establish a connection to 'DefaultHTTP'"]


para eso se debe poner un archivo xml crossdomain !!!

y como se come eso?
pues bien, en el servidor de donde jalarás tu xml o tu php o asp dinamico que generen tu data xml
tendras que poner, en el root, un archivo de nombre crossdomain.xml

que deberá tener el siguiente ocntenido:

Código :

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy 
SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
   <allow-access-from domain="www.tudominio.com" />
</cross-domain-policy>


ahora, si quieres que sea cualquier subdominio pues simplemente pones *.tudominio.com

o si finalmente quieres CUALQUIER DOMINIO pones " * " (sin espacios) osea:

Código :

 <allow-access-from domain= " * " />



Bueno espero que le sirva a alguien. Sin embargo AUN no puedo ver ningun maldito xml con mi codigo flex

Por pinocho

78 de clabLevel



Genero:Masculino  

Luna City

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.