Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/05/2008, 20:00
Avatar de xf_corp
xf_corp
 
Fecha de Ingreso: mayo-2008
Mensajes: 57
Antigüedad: 16 años, 6 meses
Puntos: 3
Re: recoger datos de xml básico

Mira raikkonen83 me parece haber visto en el foro un tema al respecto (Flex Builder 2 + XML), de hecho hace poco estuve buscando info al respecto, también soy novato pero bueno, me interesa Flex; entre varias fuentes arme el siguiente código:

Código:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" backgroundGradientColors="[#c0c0c0, #408080]"
	 creationComplete="initfnc()">
<mx:HTTPService id="getData"
url="http://localhost/flex_php/list.php" 
useProxy="false" method="GET" resultFormat="xml" result="getDatafnc(event)">
</mx:HTTPService>

<mx:XML id="mydata" source="http://localhost/flex_php/list.php"></mx:XML>

  <mx:DataGrid id="emaillist" x="30" y="30">
    <mx:columns> 
      <mx:DataGridColumn dataField="first" /> 
      <mx:DataGridColumn dataField="last" /> 
      <mx:DataGridColumn dataField="email" /> 
    </mx:columns> 
  </mx:DataGrid>
  
  <mx:HBox>
  	<mx:Button label="Load XML Static =)" click="emaillist.dataProvider=mydata.subscriber" />	
  
	<mx:Button label="Clear DG =)" click="emaillist.dataProvider=' ';dataArray.removeAll();" />	  
	
	<mx:Button label="Load XML Dinamic =)" click="getData.send()" />	  	
  </mx:HBox>
  
<mx:Script>
	<![CDATA[
		import mx.rpc.events.ResultEvent;
		import mx.collections.ArrayCollection;
		import mx.controls.Alert;

		[Bindable]
		private var dataArray:ArrayCollection;
		
		private function initfnc():void
		{	
			dataArray=new ArrayCollection();
			getData.send();
		}
		
		private function getDatafnc(event: ResultEvent):void
		{
			var xml:XML=XML(event.result);
			var oElemento:Object;
			
			Alert.show(xml.toXMLString());
			
			for each ( var element:XML in xml.elements() )
			{
			  oElemento = new Object();
			  oElemento.first = element.first;
			  oElemento.last = element.last;
			  oElemento.email = element.email;
			  dataArray.addItem(oElemento);
			}
			
			emaillist.dataProvider=dataArray;
		}
	]]>
</mx:Script>

</mx:Application>
Espero que te sea útil , prueba modificando el código...
Básicamente el ejemplo muestra dos formas de acceder a un XML, (en este caso estoy generando el XML dinámicamente desde PHP, pero bien puedes sustituir el archivo list.php por un xml estático).