Boa noite Igor, já tentei de tudo e não estou conseguindo passar o
argumento... por favor, me ajuda.
Tentei assim: mas não vai
<s:Button id="btnBuscar" x="373" y="27" label="buscar"
click="{buscarPedidos(campoBusca:Number)}"/>
onde campoBusca é o inputText será preenchido pelo usuário, comparando com
o Banco no campo nPedido conforme php abaixo.
agora dá esse erro:
Multiple markers at this line:
-1084: Syntax error: expecting rightparen before colon. (já tentei todas as
pontuações possíveis)
o remote ...
<s:RemoteObject id="RemotePedidos" destination="zend"
source="Pedidos" fault="Alert.show(event.fault.faultString)">
<s:method name="buscarPedidos"
result="{trataDadosBusca(event)}"/>
</s:RemoteObject>
o php está assim:
function buscarPedidos(){
$banco = new Banco();
$resultado = new stdClass();
$linha = 0;
$sql = "SELECT nPedido, dtPedido from pedidos WHERE nPedido =
'$campoBusca'";
$res = mysql_query($sql);
if($res){
$resultado->busca="OK";
while ($dados=mysql_fetch_object($res)){
$resultado->detalhes[$linha] = $dados;
$linha++;
}
}
else{
$resultado->busca="ERRO";
$resultado->detalhes=mysql_error();
}
return $resultado;
}
Caso tenha alguma solução mais simples, por favor, me oriente. O que eu
quero é que na DataGrid apareça apenas o Pedido que o cliente digitou.
muito grato pela atenção de todos.
Em terça-feira, 31 de julho de 2012 10h03min56s UTC-3, Principe borodin
escreveu:
>
> leia o erro
>
> numero incorreto de argumentos, experado 1, ou seja, sua funcao precisa de
> um argumento e vc nao passou nenhum, outra coisa, se esta usando zend,
> logicamente eh php
>
> Igor C. de Paula
> Analista de sistema e Desenvolvedor
> (22) 9879-5627
> [email protected]
> www.adminweb.com.br
> Sistemas intranet, internet e integrados
> Enviado via iPad
>
> Em 31/07/2012, às 09:17, aojunioro <[email protected]> escreveu:
>
> Bom dia a todos, estou estudando Flex e estou apanhando para fazer uma
> simples *Pesquisa no Banco*.
>
> Usei Flex + Zend + PHP + MySQL
>
> Se puderem me ajudar, ficarei imensamente grato.
>
> O caso é que tenho uma DataGrid que apresenta as informações do banco.
> Nesta DataGrid quero fazer uma pesquisa (no Banco) pelo número do Pedido.
>
> <s:TextInput id="campoBusca" x="286" y="27" width="79"/>
> <s:Label x="243" y="34" text="Pedido"/>
>
> <s:BorderContainer x="242" y="57" width="619" height="348">
> <mx:DataGrid id="dgFech" x="12" y="11" width="594"
> height="324"
> contentBackgroundAlpha="1.0"
>
> itemClick="{carregaDadosFech(dgFech.selectedIndex)}">
> <mx:columns>
> <mx:DataGridColumn dataField="idPedido"
> headerText="ID" width="31" />
> <mx:DataGridColumn dataField="nPedido"
> headerText="Nº Pedido"/>
> <mx:DataGridColumn dataField="vlrPedido"
> headerText="Vlr Pedido"/>
> <mx:DataGridColumn dataField="vlrApagarPed"
> headerText="Vlr a Pagar"/>
> <mx:DataGridColumn dataField="dtEntrega"
> headerText="Data Entrega"/>
> <mx:DataGridColumn dataField="vlrPagoFech"
> headerText="Vlr Pago"/>
> <mx:DataGridColumn dataField="frmPgtoFech"
> headerText="Frm Pgto"/>
> <mx:DataGridColumn dataField="statusFech"
> headerText="Status"/>
> </mx:columns>
> </mx:DataGrid>
> </s:BorderContainer>
>
>
> Para isso fiz assim, mas está apresentando erro, logo no click, portanto
> não sei se o restante está certo:
>
> *no click*
> <s:Button id="btnBuscar" x="373" y="27" label="buscar"
> click="{buscarPedidos();}"/>
>
> o erro encontra-se justamente aqui:
> *1136: Incorrect number of arguments. Expected 1.*
>
>
> *Ele deveria chamar a AS:*
>
> public function buscarPedidos(campoBusca:Number):void{
> if(campoBusca > 0){
> RemotePedidos.buscarPedidos.arguments.campoBusca = nPedido;
> RemotePedidos.buscarPedidos.send();
> }
> else{
> Alert.show("N. Pedido Inválido");
> }
> }
>
> *que chama o Remote Object:*
>
> <s:RemoteObject id="RemotePedidos" destination="zend" source="Pedidos"
> fault="Alert.show(event.fault.faultString)">
>
> * <s:method name="buscarPedidos"
> result="{trataDadosBusca(event)}"/>*
>
> </s:RemoteObject>
>
>
> *PHP tenta inserir:*
>
> function buscarPedidos(){
> $banco = new Banco();
> $resultado = new stdClass();
> $linha = 0;
> $sql = "SELECT * FROM Pedidos WHERE *campoBusca* = *$nPedido*"; //
> dúvida: pode ser assim, Id do ImputText e nome do campo no banco diferentes
> ?
> $res = mysql_query($sql);
> if($res){
> $resultado->busca="OK";
> while ($dados=mysql_fetch_object($res)){
> $resultado->detalhes[$linha] = $dados;
> $linha++;
> }
> }
> else{
> $resultado->busca="ERRO";
> $resultado->detalhes=mysql_error();
> }
> return $resultado;
> }
>
>
> *retorna o Resultado ao Remote Object*
>
> que trata os dados enviando para o AS:
>
> private function trataDadosBusca(event:ResultEvent):void{
> if (event.result.busca == "OK"){
> dataGridFech = new Object();
> dataGridFech = event.result.detalhes;
> dgFech.dataProvider = dataGridFech;
> }
> else
> Alert.show("Dados não encontrados!!\n Erro:" +
> event.result.detalhes);
> }
>
> obrigado a todos, tenho acompanhando o Grupo diariamente, e tem me ajudado
> muito neste aprendizado.
>
>
>
>
>
>
>
>
> --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para [email protected]
> Para sair da lista, envie um email em branco para
> [email protected]
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>
>
--
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev