Comunidad de diseño web y desarrollo en internet online

Problema para cargar php como xml en AS3

Citar            
MensajeEscrito el 31 Mar 2011 03:26 am
He estado tratando de crear un xml a partir de php para poder crear una lista de reprodución en flash con ActionScript 3.0. YA busque en muchos lugares y encontré diferentes tutoriales para conectar php y xml a flash pero por alguna razón no me funcionan me sale el mismo error:

Código :

TypeError: Error #1088: El marcado del documento que sigue al elemento raíz debe estar bien formado.
   at prueba_player_2_fla::MainTimeline/processXML()
   at flash.events::EventDispatcher/dispatchEventFunction()
   at flash.events::EventDispatcher/dispatchEvent()
   at flash.net::URLLoader/onComplete()



Este es el código de php que utilizo:

Código PHP :

<?php

$link = mysql_connect("localhost", "root", "root");
mysql_select_db("db");

$query = 'SELECT * FROM _download';
$results = mysql_query($query);

echo " <?xml version=\"1.0\" encoding=\"utf-8\"?>\n";
echo "<songlist>\n";


while($line = mysql_fetch_assoc($results)){
   
   if($line["active"]==1){
   
   echo "<song>\n";
   echo "<name>" . $line["display"] . "</name>\n";
   echo "<file>" . "../../prestashop/download/" . $line["filename"] . "</file>\n";
   echo "<active>" . $line["active"] . "</active>\n";
   
   echo "</song>\n";
   
   }

}

echo "</songlist>\n";

mysql_close($link);

?>


Y este es el AS3:

Código ActionScript :

var myXML:XML;
var myLoader:URLLoader = new URLLoader();
myLoader.load(new URLRequest("songs.php"));
myLoader.addEventListener(Event.COMPLETE, processXML);

function processXML(e:Event):void {
myXML = new XML(e.target.data);
trace(myXML.song[0].file);
}



En los tutoriales vi que tenia que meter ignoreWhite = true;
pero cuando lo hago me da un error:

Código :

TypeError: Error #1009: No se puede acceder a una propiedad o a un método de una referencia a un objeto nulo.
   at prueba_player_2_fla::MainTimeline/frame1()


Hice la prueba con un archivo xml en vez de un php y funciona perfecto si quito el ignoreWhite.

Espero alguien me pueda ayudar, cualquier cosa que me ayude a resolver el problema
seria bueno.

Gracias

Por aldebaran88

10 de clabLevel



 

chrome
Citar            
MensajeEscrito el 31 Mar 2011 03:47 am
Abre directamente el PHP en el navegador y mira la salida a ver si está bien formado y si el browser lo parsea

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 31 Mar 2011 04:10 am
pues yo digo que si esta bien. Cuando lo abro desde el navegador me sale así.

Código :

01 Intro.mp3 ../../prestashop/download/112882acd56ee061b5eb638f7abaf7ad71d16bba 1 hola 2 ../../prestashop/download/asdwioeikfcn8ujcd 1



y si lo abro como código fuente me sale esto:

Código XML :

 <?xml version="1.0" encoding="utf-8"?> 
<songlist> 
<song> 
<name>01 Intro.mp3</name> 
<file>../../prestashop/download/112882acd56ee061b5eb638f7abaf7ad71d16bba</file> 
<active>1</active> 
</song> 
<song> 
<name>hola 2</name> 
<file>../../prestashop/download/asdwioeikfcn8ujcd</file> 
<active>1</active> 
</song> 
</songlist> 



Después hice un archivo xml copiando esta ultima impresión para ver si lo leí con .xml
y saber si estaba bien el formato y el flash lo leyó perfectamente.

Por aldebaran88

10 de clabLevel



 

chrome
Citar            
MensajeEscrito el 31 Mar 2011 04:20 am
prueba sacando el espacio en blanco que tienes al principio de todo y quitando todos los \n, que son útiles para que tu lo veas, pero que a Flash le tienen sin cuidado

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 01 Abr 2011 01:02 am
OK, probare o de los \n, el espacio en blanco del principio se le quite despues del post que hice y paso lo mismo. vere que pasa con los saltos.
muchas gracias.

Por aldebaran88

10 de clabLevel



 

chrome
Citar            
MensajeEscrito el 01 Abr 2011 04:53 am
Ya los quite y me sigue pasando lo mismo. Se te ocurre alguna otra forma de hacer la lista de reproducción conectando una base de datos?

Por aldebaran88

10 de clabLevel



 

chrome
Citar            
MensajeEscrito el 01 Abr 2011 12:34 pm
Pasa pares de nombre/valor, no necesitas todo un XML si no tienes interfaz con otros sistemas, además te ahorras el parseo.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.