Olá!
Experimenta trocar o xml gerado pelo PHP para que ele retorne <data> e
<label> no lugar de <uf> e <nome>, assim o combo já vai saber onde pegar o
'data' e o 'label'.
Outra coisa: o seu código PHP está retornando uma lista de ufs e nomes
misturados, assim:
<retorno>
<uf>SP</uf>
<nome>São Paulo</nome>
<uf>RJ</uf>
<nome>Rio de Janeiro</nome>
</retorno>
Seria melhor você fazer com que o xml retornasse o cada estado
separadamente, assim:
<estados>
<estado>
<data>SP</data>
<label>São Paulo</label>
</estado>
</estado>
<data>RJ</data>
<label>Rio de Janeiro</label>
</estado>
</estados>
E o data provider do combo fica assim:
dataProvider="{busca_uf.lastResult.estados.estado}"
Espero ter ajudado!
Elvis
On 10/27/07, Fernando Lodi <[EMAIL PROTECTED]> wrote:
>
> Boa tarde,
>
>
>
> Sou novato em Flex e estou com problema para popular um combobox a partir
> de um HTTPService, que chama uma função php que por sua vez gera um XML.
> Consigo popular ou com o campo uf do XML ou com o campo nome, quando na
> verdade quero jogar os dois para o combobox, o campo uf como data:... e o
> campo nome como label:... Se alguém puder ajudar agradeço.
>
> Valeu
>
> Fernando
>
>
>
> *Arquivo php.php*
>
>
>
> <?
>
> function busca_uf(){
>
> $q_uf = "select * from uf";
>
> $res_uf = mysql_query($q_uf);
>
> $xml_uf = "<retorno>";
>
> while($l_uf = mysql_fetch_array($res_uf)){
>
>
>
> $xml_uf.= "<uf>$l_uf[0]</uf>";
>
> $xml_uf.= "<nome>$l_uf[1]</nome>";
>
> }
>
> $xml_uf.= "</retorno>";
>
> print $xml_uf;
>
>
>
> $file = fopen("busca_uf.txt", "w");
>
> fwrite($file, $xml_uf);
>
> fclose($file);
>
> }
>
>
>
> ?>
>
>
>
> *Arquivo cadastros.mxml*
>
> * *
>
> <?xml version="1.0" encoding="utf-8"?>
>
> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
> layout="absolute" currentState="frm_j" >
>
> <mx:HTTPService id="busca_uf" url="
> http://localhost/cadastros/bin/php.php" useProxy="false" method="POST">
>
> <mx:request xmlns="">
>
> <funcao>busca_uf</funcao>
>
> </mx:request>
>
> </mx:HTTPService>
>
>
>
> <mx:Script>
>
> <![CDATA[
>
> import mx.collections.ArrayCollection;
>
> import mx.rpc.events.ResultEvent;
>
> import mx.controls.*
>
> import mx.events.*;
>
>
>
> private function bus_uf():void{
>
> busca_uf.send();
>
> }
>
>
>
> ]]>
>
> <mx:states>
>
> <mx:State name="frm_j">
>
> <mx:AddChild position="lastChild">
>
> <mx:Panel x="0" y="36" width="800" height="636"
> layout="absolute" title="Cadastro de pessoa Jurídica">
>
> <mx:ComboBox id="cb_uf" x="91" y="183"
> creationComplete="bus_uf();"
> dataProvider="{busca_uf.lastResult.retorno.uf}"></mx:ComboBox>
>
> </mx:Panel>
>
> </mx:AddChild>
>
> </mx:State>
>
>
>
>
>
> </mx:states>
>
>
>
> </mx:Application>
>
>
>
> >
>
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---