Comunidad de diseño web y desarrollo en internet online

problema para leer xml o php desde flash 8

Citar            
MensajeEscrito el 27 Sep 2005 03:59 pm
Hola que tal. Tengo un problema y me gustaría saber si tiene solución, ya que con la llegada de flash 8, siento que los scripts que funcionan para mx 2004 tal vez no funcionen igual para el flash 8 y por lo tanto haya que escribirlos diferente.

Estoy haciendo un módulo de noticias, en el cual lee la información de un xml generado por php, pero estoy viendo que tarda un par de segundos en cargar esa información, y mientras tanto, aparece en el campo de texto la palabra 'undefined' y desaparece hasta que el texto ha sido cargado por completo... cómo puedo solucionar eso? no se si haya que poner una precarga, pero por lo menos me gustaría hacer que no apareciera el texto 'undefined' mientras carga la información.

Este es el script que estoy usando para flash 8 (como les comento, funciona perfecto en mx 2004, pero yo necesito usar el archivo en version 8 :

Código :

theNews = new XML();
theNews.ignoreWhite = true;
theNews.load('xml.php'+"?cK="+random(9999)+1);
System.useCodepage = true;

function Article( id, title, date, body){
   this.id = id;
   this.title = title;
   this.date = date;
   this.body = body;
}

Article.prototype.putOut = function(titletxt, datetxt, bodytxt){
     _root.clipvacio.contenido.clipnews[titletxt].text = this.title;
     _root.clipvacio.contenido.clipnews[datetxt].text = this.date;
     _root.clipvacio.contenido.clipnews[bodytxt].text =  this.body;
}

function articleOut(xml){
   _global.numArts = xml.firstChild.childNodes.length-1;
   info = xml.firstChild.childNodes[at].attributes;
   body = xml.firstChild.childNodes[at].firstChild.firstChild.nodeValue;
   currArticle = new Article(info.id, info.title, info.date, body);
   currArticle.putOut("titletxt","datetxt","bodytxt");
   delete currArticle;
   delete info;
}

theNews.onLoad = function(){
   articleOut(this);
   at = numArts;
   articleOut(this);
   to = Number(items.length-1);
}

articleOut(theNews);



Agradezco toda la ayuda y asesoría que me pudieran brindar al respecto. Saludos!!

Por belial

5 de clabLevel



 

msie
Citar            
MensajeEscrito el 27 Sep 2005 04:55 pm
solo elimina la última linea

Código :

articleOut(theNews); 


La razon es que esa sentencia invoca a articleOut sin asegurarse de que el archivo xml haya sido cargado, esa es la razon del undefined.

saludos :)

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 27 Sep 2005 05:42 pm
:D aaaaaaaaaaaaaah muchas gracias por la ayuda Maikel, ya funciona así como me sugeriste.

Gracias por la ayuda!!

Por belial

5 de clabLevel



 

msie
Citar            
MensajeEscrito el 23 Dic 2008 10:56 pm
Tengo un problema parecido....tengo un php que genera el xml,si lo cargo desde el navegador me muestra el arbol igual que un archivo con ext .xml, pero cuando lo consulto desde flash me aparece undefined si le pongo a cargar el php el codigo que tengo es el siguiente:

Código :

<?php 
header ("Expires: Fri, 14 Mar 1980 20:53:00 GMT"); //la pagina expira en fecha pasada
header ("Cache-Control: no-cache, must-revalidate"); //no guardar en CACHE
header ("Pragma: no-cache"); //PARANOIA, NO GUARDAR EN CACHE
//header('Content-Type: text/html');
header("Content-type:text/xml");
?>
<?php 
echo '<?xml version="1.0" encoding="ISO-8859-1" ?>';
echo  '<mensaje>';
echo  '<asunto>Archivo de prueba</asunto>';
echo  '<correo>[email protected]</correo>';
echo  '<cuerpo>XML muy bueno para pasar datos entre un programa y otro, excelente si se puede dinamico</cuerpo>';
echo  '<remitente>[email protected]</remitente>';
echo  '</mensaje>';
?>

y el codigo en flash para leer el xml es el siguiente:

Código :

var my_xml:XML=new XML();
my_xml.ignoreWhite=true;
my_xml.onLoad= function(exito){
   if(exito){
   asunto_txt.text=my_xml.firstChild.childNodes[0].firstChild.nodeValue;   ;
   destino_txt.text=my_xml.firstChild.childNodes[1].firstChild.nodeValue;
   cuerpo_txt.text=my_xml.firstChild.childNodes[2].firstChild.nodeValue;
   remitente_txt.text=my_xml.firstChild.childNodes[3].firstChild.nodeValue;

   
   }
   else{
      cuerpo_txt.text="Error en la carga del XML";
      }
};
function load_XML(){
   my_xml.load("xml_php.php");
   
   }

espero me puedan ayudar xq la verdad no se xq sale undefined es como si no reconociera el tipo de datos q recibe o una cadena q no reconoce...gracias cualquier colaboración!!!! :)

Por jupsax

0 de clabLevel



 

firefox

 

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