não percebo ainda muito de flex, mas ja aconteceu esse problemas
muitas vezes....

no amfphp tens o browser...  para funcionar tens k ir com
http://localhost/.../amfphp/browser, porque se fores com c:/www/...não
rola...

depois terás a tua função e o intput para inserires os argumentos....
e ve se com o argumento dá erro ou não.... caso dê.... já é da funcao
php....

esto é a ajuda de alguem que sabe pouco, mas que me tem ajudado
muito....


On 18 maio, 22:47, S1l4s <si...@sajnet.com.br> wrote:
> Amigos Flex Developers,
>
> Faz tempo q acompanho esta lista passivamente, mesmo porque todas
> minhas duvidas ao longo desse tempo foram sanadas com threads já
> existentes, postadas por outros usuarios. No entanto, deparei-me com o
> seguinte problema (nao encontrei no historico da lista):
>
> Meu back-end ( php) não esta recebendo os argumentos do flex.
> Verifiquei na perspectiva de debug do flex builder, e constatei que os
> objetos sao criados corretamente, porem implesmente não chegam no php.
> Lembrando que via browser amfphp os metodos funcionam normalmente.
>
> Vejam os fontes:
>
> //VO´s
>
> <?php
>         class UserVO
>         {
>                 public $coduser;
>                 public $nome;
>                 public $email;
>                 public $login;
>                 public $senha;
>                 public $ativo;
>                 public $root;
>
>                 public $_explicitType = "br.com.sajsoft.sms.vo.UserVO";
>         }
> ?>
>
> package br.com.sajsoft.sms.vo
> {
>         [Bindable]
>         [RemoteClass(alias="br.com.sajsoft.sms.vo.UserVO")]
>
>         public class UserVO
>         {
>                 public var coduser:uint;
>                 public var nome:String;
>                 public var email:String;
>                 public var login:String;
>                 public var senha:String;
>                 public var ativo:String;
>                 public var root:String;
>
>         }
>
> }
>
> //Classe remote
>
> package br.com.sajsoft.sms.remote{
>
>         import br.com.sajsoft.sms.vo.UserVO;
>
>         import mx.controls.Alert;
>         import mx.rpc.AsyncToken;
>         import mx.rpc.Responder;
>         import mx.rpc.events.FaultEvent;
>         import mx.rpc.remoting.mxml.RemoteObject;
>
>         public class RemoteSMS{
>
>                 private var bridge:RemoteObject;
>
>                 //singleton
>                 private static var instance:RemoteSMS;
>                 public static function getInstance():RemoteSMS{
>                         if(instance == null){
>                                 instance = new RemoteSMS();
>                         }
>                         return instance;
>                 }
>                 //Funcao chamada em caso de falha no remote
>                 private function defaultFaultHandler(e:FaultEvent):void{
>                         Alert.show(e.fault.faultDetail, e.fault.faultString);
>                 }
>
>                 public function Logar(ClassName:String, dadosVO:UserVO,
> result:Function):void
>                 {
>                         bridge.source = 'sms.' + ClassName;
>                         var async:AsyncToken = bridge.Login(dadosVO);
>                         async.addResponder(new Responder(result, 
> defaultFaultHandler));
>                 }
>
>                 public function RemoteSMS()
>                 {
>                         bridge = new RemoteObject();
>                         bridge.showBusyCursor = true;
>                         bridge.destination = 'amfphp';
>                 }
>         }
>
> }
>
> //component de login
>
> <?xml version="1.0" encoding="utf-8"?>
> <mx:Panel xmlns:mx="http://www.adobe.com/2006/mxml"; layout="absolute"
> width="268" height="184" title="Digite seu login e Senha">
>         <mx:Script>
>                 <![CDATA[
>                         import mx.rpc.events.ResultEvent;
>                         import br.com.sajsoft.sms.vo.UserVO;
>                         import br.com.sajsoft.sms.remote.RemoteSMS;
>                         import mx.rpc.remoting.mxml.RemoteObject;
>                         import mx.controls.Alert;
>
>                         private var remote:RemoteSMS = 
> RemoteSMS.getInstance();
>
>                         //Funcao de autenticacao
>                         private function Autenticar():void{
>                                 if(txtLogin.text != "" && txtSenha.text != 
> ""){
>
>                                         var loginVO:UserVO = new UserVO();
>                                         loginVO.login = txtLogin.text;
>                                         loginVO.senha = txtSenha.text;
>
>                                         remote.Logar('ClassUsuario', loginVO, 
> AutenticarResult);
>
>                                 }else{
>                                         MessageLoginError.text = "Por favor, 
> preencha todos os
> campos!!!";
>                                 }
>                         }
>
>                         private function AutenticarResult(e:ResultEvent):void{
>                                 if(e.result.logado == "YES"){
>                                         Alert.show("UHUHUHUHU, estamos logado 
> " +
> e.result.logado,"Mensagem:");
>                                 }else{
>                                         MessageLoginError.text = 
> e.result.erro;
>                                         txtLogin.text = "";
>                                         txtSenha.text = "";
>                                 }
>                         }
>
>                 ]]>
>         </mx:Script>
>
>         <mx:Label x="10" y="10" fontFamily="Verdana" fontSize="10"
> fontStyle="normal" fontWeight="bold" textAlign="left" width="222"
> color="#F81207" id="MessageLoginError"/>
>         <mx:Label x="10" y="38" text="Login"/>
>         <mx:Label x="10" y="80" text="Senha"/>
>         <mx:TextInput x="72" y="36" id="txtLogin"/>
>         <mx:TextInput x="72" y="78" id="txtSenha" displayAsPassword="true"/>
>         <mx:Button x="160" y="108" label="Acessar" id="btnLogin"
> click="Autenticar()"/>
> </mx:Panel>
>
> //main
>
> <?xml version="1.0" encoding="utf-8"?>
> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
> layout="absolute"
>         width="1098" height="746" horizontalAlign="center"
>         xmlns:comp="br.com.sajsoft.sms.component.*">
>         <mx:Script>
>                 <![CDATA[
>                         import br.com.sajsoft.sms.vo.UserVO;
>                 ]]>
>         </mx:Script>
>
>         <comp:LoginPanel x="675" y="300">
>         </comp:LoginPanel>
>
> </mx:Application>
>
> //back-end
>
> <?php
> include_once 'br/com/sajsoft/sms/vo/UserVO.php';
> include_once 'classes/caiubiphp/modelflex.php';
>
> class ClassUsuario
> {
>          public function Login(UserVO $dadosVO){
>                 $aut = new Model('usuario');
>                 $aut->find(array('*'),"login = '$dadosVO->login' and senha =
> '$dadosVO->senha'");
>
>                 $resultado['logado'] = null;
>                 $resultado['erro'] = null;
>
>                 if ($aut->result()){
>                         $resultado['logado'] = "YES";
>                         //Cria sessao
>                         $_SESSION['coduser'] = $user->coduser;
>
>                         return $resultado;
>                 }else{
>                         $resultado['erro'] =   "Usuário ou Senha Inválido";
>                         $resultado['logado'] = "NO";
>                         return $resultado ;
>                 }
>         }
>
> }
>
> -------------
>
> Desculpem o memorando e please help me!!!
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para 
flexdev-unsubscr...@googlegroups.com
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---

Responder a