Foros del Web » Creando para Internet » Flash y Actionscript »

Traer datos de una BD a flash

Estas en el tema de Traer datos de una BD a flash en el foro de Flash y Actionscript en Foros del Web. Hola, he estado buscando acerca del tema pero no me aclaro. Se manejarme bien con php+mysql, pero poco de actioscript y menos de xml. He ...
  #1 (permalink)  
Antiguo 26/07/2006, 10:45
 
Fecha de Ingreso: mayo-2006
Mensajes: 64
Antigüedad: 11 años, 7 meses
Puntos: 0
Traer datos de una BD a flash

Hola, he estado buscando acerca del tema pero no me aclaro.
Se manejarme bien con php+mysql, pero poco de actioscript y menos de xml.

He encontrado un post acerca de esto del 2003 en el que se explicaba como hacerlo creando un archivo xml y luego recogiendo el xml en flash, pero no me funciona:

Código:
$dbhost = "localhost" ;
$dbuser = "root" ;
$dbpass = "" ;
$db = "noticias" ;
$conectar = mysql_connect($dbhost,$dbuser,$dbpass) ; mysql_select_db($db,$conectar) ;

$resp = mysql_query("select * FROM noticias ORDER BY id desc") ;

//creamos el XML
$xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<noticias>\n";

while ($datos = mysql_fetch_array($resp)) { 
	$xml.="\t<noticia id=\"".$datos['id']."\" titulo=\"".$datos['titulo']."\" texto=\"".$datos['texto']."\"/>\n";
}
$xml.='</noticias>';

//mostramos el XML
echo $xml;
Les agradecería cualquier ayuda que puedan prestarme
  #2 (permalink)  
Antiguo 26/07/2006, 11:12
 
Fecha de Ingreso: julio-2006
Mensajes: 40
Antigüedad: 11 años, 4 meses
Puntos: 0
no te funciona el xml que creas con php, o bien, es flashel que no recibe bien los datos?
con php no es dificil crear un xml para que flash lo reciba, es más dificil en mi opinion que flash lo reciba bien
  #3 (permalink)  
Antiguo 26/07/2006, 11:16
 
Fecha de Ingreso: mayo-2006
Mensajes: 64
Antigüedad: 11 años, 7 meses
Puntos: 0
el php no me genera ningun xml
  #4 (permalink)  
Antiguo 26/07/2006, 11:26
 
Fecha de Ingreso: julio-2006
Mensajes: 40
Antigüedad: 11 años, 4 meses
Puntos: 0
buenas,
yo hace ya algunos dias que no toco mucho php, pero creo que dentro de mysql_query no van con comillas
Tampoco me hagas mucho caso...
has provado de ejecutar el php sin conexion a base de datos... es decir que te haga el echo con todo los del xml, haber si te lo imprime bien en pantalla.
http//localhost/tuphp.php sino sale asi es que esta mal escrito el xml.

Tampoco es que sea de mucha ayuda pero claro es question de probar...
Sino, hay un libro muy bueno de flash+php+mysql ... en el qual se trabaja con xml sobre todo, creo recordar que es de granatta y lo publica anaya.

Saludos!
  #5 (permalink)  
Antiguo 26/07/2006, 12:14
 
Fecha de Ingreso: mayo-2006
Mensajes: 64
Antigüedad: 11 años, 7 meses
Puntos: 0
Parece que el fallo estaba en que no coje las tildes.
Bueno, el 1º de los fallos, porque ahora lo procesa entero (en IE me muestra:
Código:
  <?xml version="1.0" encoding="UTF-8" ?> 
- <noticias>
  <noticia id="2" fecha="20/07/2006" titulo="Acuerdo entre la Agencia" texto="Acuerdo acuerdo acuerdo acuerdo acuerdo acuerdo acuerdo acuerdo acuerdo acuerdo acuerdo v" /> 
  <noticia id="1" fecha="20/07/2006" titulo="La Agencia" texto="Premio premio premio premio premio premio v" /> 
  </noticias>
Pero no genera ningun archivo xml
  #6 (permalink)  
Antiguo 26/07/2006, 13:03
 
Fecha de Ingreso: mayo-2006
Mensajes: 64
Antigüedad: 11 años, 7 meses
Puntos: 0
Por fin lo consegui, pero ahora tengo el problema de que en IE se ven las noticias sin problemas pero no en firefox...

este es el codigo flash :

Código:
var noticias_xml:XML = new XML();
noticias_xml.ignoreWhite = true;
noticias_xml.onLoad = function(ok){
	//si se logro cargar llamamos a la funcion 'listar_noticias' pasandole como parámetros
	//la lista de hijos nodo del nodo principal
	if(ok) listar_noticias(this.firstChild.childNodes);
	//si no se cargó correctamente, informamos
	else trace('no se cargó correctamente');
}

noticias_xml.load('noticias.php');

listar_noticias = function(noticias:Array):Void{
	//modificamos las propiedades del campo de texto para que funcione como queremos

	//exploramos cada elemento del array 'noticias' que recibimos como parametro
	//y vamos agregando dentro del campo de texto dandole formato HTML
	
		titulo1.htmlText = noticias[0].attributes.titulo;
		texto1.htmlText = noticias[0].attributes.texto;
		fecha1.htmlText = noticias[0].attributes.fecha;
	
}
stop();
Y este el codigo php

Código:
<?php
$dbhost = "localhost" ;
$dbuser = "root" ;
$dbpass = "" ;
$db = "noticias" ;
$conectar = mysql_connect($dbhost,$dbuser,$dbpass) ; mysql_select_db($db,$conectar) ;


$resp = mysql_query("select id,fecha,titulo,texto FROM noticias ORDER BY id desc") ;

		
$xml = '';
$xml .= '<?xml version="1.0" encoding="UTF-8"?>'."\n"; 
$xml .= '<noticias>';  

while ($datos = mysql_fetch_array($resp)) { 

        $fecha = $datos[fecha] ;
        $mesesano = array("01","02","03","04","05","06","07","08",
        "09","10","11","12") ;
        $diames = date(j,$fecha) ; $mesano = date(n,$fecha) - 1 ; $ano = date(Y,$fecha) ;
        $fecha = "$diames/$mesesano[$mesano]/$ano" ;
		
		$xml .= "\n\t".'<noticia id="'.$datos['id'].'" fecha="'.$fecha.'" titulo="'.$datos['titulo'].'" texto="'.$datos['texto'].'" />';
}
$xml .= "\n</noticias>";  
echo $xml; 

?>
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:42.