Ja consegui receber dados e colocar em um grid, e muita outras coisas basicas.
Porem me deparei com o problema. Quero efetuar um cadastro de usuario. Logo, meu PHP, vai receber as infos do formulario flex, verificar se o usuario existe ou não, cadastra-lo se naum. Se o usuario existir, preciso mostrar no formulario, e se o usuario foi cadastrado tb tenho que fazer isso.
olha meu código como está.
CODE
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" backgroundColor="#FFFFFF" backgroundGradientAlphas="[0.0, 0.0]" width="659" height="502" xmlns:ns1="*">
<mx:Script>
<![CDATA[
public function abrirRegistro():void {
wndRegistro.visible = true;
txtSenha.visible = false;
txtUsuario.visible = false;
btnEntrar.visible = false;
btnRegistrar.visible = false;
}
public function fecharRegistro():void {
txtSenha.visible = true;
txtUsuario.visible = true;
btnEntrar.visible = true;
btnRegistrar.visible = true;
wndRegistro.visible = false;
}
]]>
</mx:Script>
<mx:HTTPService id="wsRegistrar" url="http://localhost/flexchat/src/cadastrar_usuario.php" useProxy="false" contentType="application/xml" method="POST">
<mx:request xmlns="">
<nome> {txtRegistroNome.text} </nome>
<nick> {txtRegistroNick.text} </nick>
<senha> {txtRegistroSenha.text} </senha>
<senhaconfirmar> {txtRegistroSenhaConfirmar.text} </senhaconfirmar>
<email> {txtRegistroEmail.text} </email>
</mx:request>
</mx:HTTPService>
<mx:Image x="10" y="10" source="img/login.gif"/>
<mx:TextInput x="211" y="251" width="146" id="txtUsuario"/>
<mx:Label x="211" y="236" text="Usuário"/>
<mx:Label x="211" y="281" text="Senha"/>
<mx:TextInput x="211" y="297" width="146" displayAsPassword="true" id="txtSenha"/>
<mx:Button x="365" y="297" label="Entrar" id="btnEntrar"/>
<mx:Button x="200" y="181" label="Registrar" id="btnRegistrar" height="18" width="65" click="abrirRegistro();"/>
<mx:TitleWindow x="128" y="138" width="326" height="315" layout="absolute" title="Registrar Novo Usuário" id="wndRegistro" visible="false">
<mx:Label x="10" y="10" text="Nome de Usuário (usado para entrar no chat)"/>
<mx:TextInput x="10" y="26" id="txtRegistroNome" width="225"/>
<mx:Label x="10" y="56" text="Nick (nome visível a outros usuários)"/>
<mx:TextInput x="10" y="72" width="225" id="txtRegistroNick"/>
<mx:Label x="10" y="102" text="Email"/>
<mx:TextInput x="10" y="117" width="225" id="txtRegistroEmail"/>
<mx:Label x="10" y="147" text="Senha"/>
<mx:TextInput x="10" y="163" width="225" id="txtRegistroSenha" displayAsPassword="true"/>
<mx:Label x="10" y="193" text="Confirmação da Senha (a mesma digitada à cima)"/>
<mx:TextInput x="10" y="208" width="225" id="txtRegistroSenhaConfirmar" displayAsPassword="true"/>
<mx:Button x="131" y="243" label="Cadastrar" id="btnCadastrar" click="wsRegistrar.send();"/>
<mx:Button x="221" y="243" label="Cancelar" id="btnCancelar" click="fecharRegistro();"/>
</mx:TitleWindow>
</mx:Application>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" backgroundColor="#FFFFFF" backgroundGradientAlphas="[0.0, 0.0]" width="659" height="502" xmlns:ns1="*">
<mx:Script>
<![CDATA[
public function abrirRegistro():void {
wndRegistro.visible = true;
txtSenha.visible = false;
txtUsuario.visible = false;
btnEntrar.visible = false;
btnRegistrar.visible = false;
}
public function fecharRegistro():void {
txtSenha.visible = true;
txtUsuario.visible = true;
btnEntrar.visible = true;
btnRegistrar.visible = true;
wndRegistro.visible = false;
}
]]>
</mx:Script>
<mx:HTTPService id="wsRegistrar" url="http://localhost/flexchat/src/cadastrar_usuario.php" useProxy="false" contentType="application/xml" method="POST">
<mx:request xmlns="">
<nome> {txtRegistroNome.text} </nome>
<nick> {txtRegistroNick.text} </nick>
<senha> {txtRegistroSenha.text} </senha>
<senhaconfirmar> {txtRegistroSenhaConfirmar.text} </senhaconfirmar>
<email> {txtRegistroEmail.text} </email>
</mx:request>
</mx:HTTPService>
<mx:Image x="10" y="10" source="img/login.gif"/>
<mx:TextInput x="211" y="251" width="146" id="txtUsuario"/>
<mx:Label x="211" y="236" text="Usuário"/>
<mx:Label x="211" y="281" text="Senha"/>
<mx:TextInput x="211" y="297" width="146" displayAsPassword="true" id="txtSenha"/>
<mx:Button x="365" y="297" label="Entrar" id="btnEntrar"/>
<mx:Button x="200" y="181" label="Registrar" id="btnRegistrar" height="18" width="65" click="abrirRegistro();"/>
<mx:TitleWindow x="128" y="138" width="326" height="315" layout="absolute" title="Registrar Novo Usuário" id="wndRegistro" visible="false">
<mx:Label x="10" y="10" text="Nome de Usuário (usado para entrar no chat)"/>
<mx:TextInput x="10" y="26" id="txtRegistroNome" width="225"/>
<mx:Label x="10" y="56" text="Nick (nome visível a outros usuários)"/>
<mx:TextInput x="10" y="72" width="225" id="txtRegistroNick"/>
<mx:Label x="10" y="102" text="Email"/>
<mx:TextInput x="10" y="117" width="225" id="txtRegistroEmail"/>
<mx:Label x="10" y="147" text="Senha"/>
<mx:TextInput x="10" y="163" width="225" id="txtRegistroSenha" displayAsPassword="true"/>
<mx:Label x="10" y="193" text="Confirmação da Senha (a mesma digitada à cima)"/>
<mx:TextInput x="10" y="208" width="225" id="txtRegistroSenhaConfirmar" displayAsPassword="true"/>
<mx:Button x="131" y="243" label="Cadastrar" id="btnCadastrar" click="wsRegistrar.send();"/>
<mx:Button x="221" y="243" label="Cancelar" id="btnCancelar" click="fecharRegistro();"/>
</mx:TitleWindow>
</mx:Application>
cadastrar_usuario.php
CODE
<?php
$infos["nome"] = $_POST["txtRegistroNome"];
$infos["nick"] = $_POST["txtRegistroNick"];
$infos["senha"] = $_POST["txtRegistroSenha"];
$senha_confirmar = $_POST["txtRegistroSenhaConfirmar"];
$infos["email"] = $_POST["txtRegistroEmail"];
require_once("../classes/adodb/adodb.inc.php");
require_once("../includes/config.inc.php");
$adoDB = NewADOConnection(BD_DSN);
$res = $adoDB->GetOnce("select count(cod_usuario) as total where nome = '" . $infos["txtRegistroNome"] . "' or nick = '" . $infos["txtRegistroNick"] . "' or email = '" . $infos["txtRegistroEmail"] . "'");
$adoDB->Close();
if($res > 0) {
$adoDB = NewADOConnection(BD_DSN);
$res = $adoDB->AutoExecute("usuarios", $info, "INSERT");
$adoDB->Close();
if($res) {
//RETORNO UM OK PARA SER TRATADO NO FLEX
} else {
//RETORNO UM ERRO PARA O FLEX, DIZENDO QUE OUVE PROBLEMA COM O BANCO
}
} else {
//RETORNO UM RETORNO PARA O FLEX, DIZENDO QUE O USUARIO JA EXISTE
}
?>
$infos["nome"] = $_POST["txtRegistroNome"];
$infos["nick"] = $_POST["txtRegistroNick"];
$infos["senha"] = $_POST["txtRegistroSenha"];
$senha_confirmar = $_POST["txtRegistroSenhaConfirmar"];
$infos["email"] = $_POST["txtRegistroEmail"];
require_once("../classes/adodb/adodb.inc.php");
require_once("../includes/config.inc.php");
$adoDB = NewADOConnection(BD_DSN);
$res = $adoDB->GetOnce("select count(cod_usuario) as total where nome = '" . $infos["txtRegistroNome"] . "' or nick = '" . $infos["txtRegistroNick"] . "' or email = '" . $infos["txtRegistroEmail"] . "'");
$adoDB->Close();
if($res > 0) {
$adoDB = NewADOConnection(BD_DSN);
$res = $adoDB->AutoExecute("usuarios", $info, "INSERT");
$adoDB->Close();
if($res) {
//RETORNO UM OK PARA SER TRATADO NO FLEX
} else {
//RETORNO UM ERRO PARA O FLEX, DIZENDO QUE OUVE PROBLEMA COM O BANCO
}
} else {
//RETORNO UM RETORNO PARA O FLEX, DIZENDO QUE O USUARIO JA EXISTE
}
?>
Não to conseguindo enviar os parametros para a pagina.
E quando conseguir fazer isso, naum sei como vou retornar alguma coisa, sem colocar em um grid, ou combo. Preciso que o retorno seja armazenado em uma variavel, para poder verificar.
algumas telinhas =)


Valeu pessoal

Help














