Estoy empezando a desarrollar con Flex 3 usando amfphp + mysql + php; y tengo un problema a la hora de guardar desde flex, problema que no lo tengo cuando hago la prueba con el amfphp. El error que me sale es el sgte:
**********************************************************************************************************************************************************************
[RPC Fault faultString="Missing argument 1 for empresas::empresaNueva()" faultCode="AMFPHP_RUNTIME_ERROR" faultDetail="C:\AppServ\www\socep\amfphp\services\empresas.php on line 4"]
at mx.rpc::AbstractInvoker/http://www.adobe.com/2006/flex/mx/internal::faultHandler()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\AbstractInvoker.as:220]
at mx.rpc::Responder/fault()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\Responder.as:53]
at mx.rpc::AsyncRequest/fault()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\AsyncRequest.as:103]
at NetConnectionMessageResponder/statusHandler()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\messaging\channels\NetConnectionChannel.as:569]
at mx.messaging::MessageResponder/status()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\messaging\MessageResponder.as:222]
**********************************************************************************************************************************************************************
en la clase empresas.php uso el sgte codigo para la insertación:
**********************************************************************************************************************************************************************
<?php
Class empresas{
function empresaNueva($empresa,$ruc,$direccion,$ciudad,$telefono,$celular,$fax,$www,$email) {
include 'socep.php';
$coneccion=mysql_connect($sp_mysql_serv,$sp_mysql_usuario,$sp_mysql_clave);
if (!$coneccion)
throw new Exception("No se puede conectar con la base de datos");
$seleccion=mysql_select_db($sp_mysql_db);
if (!$seleccion)
throw new Exception("No se puede seleccionar la base de datos $sp_mysql_db");
$sql = "INSERT INTO empresas(empresa,ruc,direccion,ciudad,telefono,celular,fax,www,email,fecha,hora,ip) values('". mysql_escape_string($empresa) ."','". mysql_escape_string($ruc) ."','". mysql_escape_string($direccion) ."','". mysql_escape_string($ciudad) ."','". mysql_escape_string($telefono) ."','". mysql_escape_string($celular) ."','". mysql_escape_string($fax) ."','". mysql_escape_string($www) ."','". mysql_escape_string($email) ."',CURDATE(),CURTIME(),'". $_SERVER['REMOTE_ADDR'] ."')";
$ejecucion=mysql_query($sql);
if (!$ejecucion)
throw new Exception("No se puede ejecutar la instruccion: $sql");
return mysql_insert_id();
mysql_close($coneccion);
}
?>
******************************************************************************************************************************************************************
y este es el codigo de la llamada en flex:
*****************************************************************************************************************************************************************
//este es el script:
<mx:Script>
<![CDATA[
private function guardar():void
{
empresas.empresaNueva.send(tiEmpresa.text,tiRuc.text,tiDireccion.text,tiCiudad.text,tiTelefono.text,tiCelular.text);
}
private function guardarRes():void
{
empresas.empresaNueva.send();
}
]]>
</mx:Script>
//llamada a los metodos
<mx:RemoteObject id="empresas" endpoint="http://localhost/socep/amfphp/gateway.php"
source="empresas" destination="empresas" showBusyCursor="true">
<mx:method name="empresaNueva" result="guardarRes();"/>
</mx:RemoteObject>
****************************************************************************************************************************************************************
Agradeceria mucho el comentario de ustedes...
