Comunidad de diseño web y desarrollo en internet online

error al pasar XML mediante variable flashvars

Citar            
MensajeEscrito el 17 Nov 2009 12:07 pm
Hola, tengo un problema y no veo que esta mal. Intento pasar un XML mediante FlashVars y el Flash no lo carga. A ver si alguien me puede echar una mano. He seguido ejemplos de tutoriales pero sigue sin funcionar. Creo que lo que esta mal es que llamo dos veces a miXML.onLoad pero no se solucionarlo. Gracias.

Código ActionScript :

var myXML:String
miXML = new XML();
miXML.ignoreWhite = true;
miXML.onLoad = loadXML; 
miXML.load(_level0.myXML)
miXML.onLoad = function(status) {
   if (status) {
      datosxml = this.firstChild.childNodes;            
      // Creamos MC
      _root.createEmptyMovieClip("mc", -16384);
      // Cargamos imagen en MC
      loadMovie(datosxml[0].attributes.imagen, "mc");
      // Posicionamos MC
      mc._x = 0;
      mc._y = 0;
      // Cargamos texto
      _root.createTextField("textoproducto",1,0,25,85,20);
      myformat = new TextFormat();
      
      myformat.color = 0x888888;   
      textoproducto.text = datosxml[0].attributes.nombre;
      textoproducto.setTextFormat(myformat);
      trace(datosxml[0].attributes.nombre);
      delete miXML;
   } else {
      textoproducto.text = "Información no cargada";
   }
};


Código HTML :

<body>
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.adobe.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="550" height="400" id="myflashvars" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="swf/productos_detalle_provareal.swf" />
<param name="FlashVars" value="myXML=mixml.xml">
<param name="quality" value="high" />
<param name="bgcolor" value="#cccccc" />
<embed src="swf/productos_detalle_provareal.swf" FlashVars="myXML=mixml.xml" quality="high" bgcolor="#ffffff" width="550" height="400" name="myflashvars" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" />
</object>
</body>

Por fviaplana

32 de clabLevel



 

msie8
Citar            
MensajeEscrito el 17 Nov 2009 12:34 pm
Quita esto:

miXML.onLoad = loadXML;

En un campo de texto muestra si el flashvars ha tomado valor

muestra.text = "El XML por flashvars es "+myXML

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 17 Nov 2009 12:42 pm
Ya segui las instrucciones. En el campo de texto me sale "El XML por flashvars es mixml.xml" pero sigue sin aparecerme el contenido en textoproducto.text. No se que hago mal. Gracias. Te pongo el XML por si ayuda.

Código XML :

<imagenes>
   <producto nombre="producto1" imagen="imagenes/imagenes-productos-detalles/producto1.jpg"></producto>
   <producto nombre="producto2" imagen="imagenes/imagenes-productos-detalles/producto2.jpg"></producto>
</imagenes>

Por fviaplana

32 de clabLevel



 

msie8
Citar            
MensajeEscrito el 17 Nov 2009 12:48 pm
¿La imagen te la carga?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 17 Nov 2009 12:50 pm
No la imagen tampoco la carga.

Por fviaplana

32 de clabLevel



 

msie8
Citar            
MensajeEscrito el 17 Nov 2009 12:56 pm
Bien, ahora en el mismo campo de texto donde mostraste el flashvars veremos si ha cargado el XML, pon

Código ActionScript :

miXML.onLoad = function(status) { 
   if (status) { 
       muestra.text = "XML cargado";
       .... 
   } else {
      muestra.text = "Información no cargada"; 
   }


Corrijo el else porque lo mandas a mostrar en un campo de texto inexistente (se crea dinámicamente en la primera parte del if)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 17 Nov 2009 01:03 pm
Me salio 'Información no cargada'.

Por fviaplana

32 de clabLevel



 

msie8
Citar            
MensajeEscrito el 17 Nov 2009 01:06 pm
Si la variable por flashvars es mixml.xml, cambia esta línea y ponla hardocded

miXML.load("mixml.xml")

Si sigue pasando lo mismo es que el archivo xml no está donde debería

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 17 Nov 2009 01:20 pm
Hola, ya veo cual es el problema. En el html tengo <base href="http://www.midominio.com" /> y el html y el xml estan en un subdirectorio. Hice eso porque queria intentar disponer de una estructura de directorios siguientes con los elementos clasificados:

directorio html
directorio swf
directorio imagenes
directorio xml

Esta estructura modifica las rutas de referencia. Ya seguire provando con las rutas a ver si me sale. Almenos ahora se que el flash esta correcto. Gracias por todo.

Por fviaplana

32 de clabLevel



 

msie8

 

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