Estoy intentando hacer una aplicación de prueba... pero cuando intento enviar un parámetro a la función que se debería ejecutar en servidor... estos argumentos no son recibidos....
Tengo una clase llamada Contact que tiene tres propiedades públicas: name, email y phone.
Luego tengo la clase ContactCollectionModel (aplica MVC):
Código ActionScript :
package {
import com.stylosweb.patterns.mvc.Model;
import flash.net.NetConnection;
import flash.net.Responder;
public class ContactCollectionModel extends Model{
private var connection: NetConnection;
private var responder: Responder;
public function ContactCollectionModel() {
this.connection = new NetConnection();
this.connection.connect( "http://localhost/ContactManager/amfphp/gateway.php" );
}
public function addContact( aContact: Contact ){
this.responder = new Responder( defaultResponse, fail );
this.connection.call( "ServerContactManager.addContact", this.responder, aContact );
}
public function defaultResponse( result: Object ){
trace( "La operación se ejecutó satisfactoriamente." );
trace( result );
}
public function fail( error: Object ){
trace( "Error" );
}
}
}Después.. del lado del servidor solo tengo:
Código PHP :
<?php
include_once( "../../PHP/DataBase.php" );
class ServerContactManager {
function ServerContactManager() {
$this->methodTable = array(
"addContact" => array (
"access" => "remote",
"description" => "Agregar un nuevo contacto, al cual es recivido por parámetro."
)
);
}
function addContact($aContact){
return $aContact;
}
}?>El problema es que al pasar un objeto o un array como parámetro en el "connectio.call", del lado del servidor no toma nada.... la varíable está nula.
En cambio, si yo le paso un string o un entero en lugar de un objeto... php funciona correctamente...
Espero alguien pueda ayudarme... ya estoy hace bastante con esto y no se qué puede ser...
