Bueno, posteo para ver si me pueden dar una mano con una pelicula que estoy programando, en la cual no logro establecer comunicacion entre Remoting y AMFPHP...
El tema es asi: Yo recibo una variable de otra pelicula mediante LocalConnection (hasta ahi todo bien), luego, esa variable la envio a un servicio AMFPHP, y este me tiene que devolver unos datos que extrajo de mi DB MySQL...
El tema es que al correr la pelicula salta el evento onStatus de la comunicacion con AMFPHP...
Los scripts son estos:
AS:
Código :
import mx.remoting.NetServices; import mx.remoting.Connection; mx.remoting.debug.NetDebug.initialize(); trace("holas!!"); var entradas = new LocalConnection(); entradas.receptor_id = function(dato1, dato2) { trace("Variables recibidas"); trace(dato1 + " " + dato2); entradas.close(); //Tipo de dispositivo NetServices.setDefaultGatewayUrl("http://localhost/flashservices/gateway.php"); conn = NetServices.createGatewayConnection(); serv = conn.getService("id_device", tomarDispositivo); trace("Le envio este dato a AMFPHP: " + dato1); serv.averiguar(dato1); }; entradas.connect("envio"); tomarDispositivo = new Object(); tomarDispositivo.averiguar_Result = function(respuesta) { trace("Respuesta: " + respuesta); switch (respuesta) { case 1 : loadMovie("lampara", contenedor); break; case 2 : loadMovie("puerta", contenedor); break; case 3 : loadMovie("ventilador", contenedor); break; case 4 : loadMovie("radio", contenedor); break; } }; tomarDispositivo.onStatus = function(respuesta) { trace("¡¡ERROR!!"); trace(respuesta); }; stop();
Y el servicio AMFPHP :
Código :
<?php include "D:/offlinedocs/bdvars.php"; class id_device { function id_device(){ $this->methodTable = array( "averiguar" => array( "description" => "Cambia el estado del dispositivo deseado...", "access" => "remote", "arguments" => array( //Variables ke va a permitir entrar AMF... "identifier")//ID_xxxxx de la seleccion anterior... ) ); } function averiguar($identifier){ mysql_select_db($db_name,$conn); $ask = "SELECT dispositivo FROM dispositivos WHERE Id_dispositivos = '$identifier'"; $consulta = mysql_query($ask,$conn); if($resultado = mysql_fetch_array($consulta)){ $mensaje[0] = "OK"; } else{ $mensaje[0] = "¡¡ERROR!!"; } /*$ask = "SELECT nombre FROM dispositivos WHERE Id_dispositivos = '$identifier'"; $consulta = mysql_query($ask,$conn); if($resultado = mysql_fetch_array($consulta)){ $mensaje[1] = $resultado[0]; }*/ return $mensaje; } } ?>
Bueno, espero que me puedan ayudar... y muchas gracias!!
Pablo