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

Es posible generar XML con PHP+mysql para usar cargarlo en un DataGrid de FLASH???

Estas en el tema de Es posible generar XML con PHP+mysql para usar cargarlo en un DataGrid de FLASH??? en el foro de Flash y Actionscript en Foros del Web. Hola amigos ... tengo un caso Quiero generar con php un archivo que contenga codigo XML, es decir gente.php Código PHP: <?xml version = "1.0"  encoding ...
  #1 (permalink)  
Antiguo 06/08/2005, 09:10
Avatar de richardinj  
Fecha de Ingreso: enero-2005
Ubicación: Ciber Espacio
Mensajes: 2.180
Antigüedad: 19 años, 10 meses
Puntos: 11
Es posible generar XML con PHP+mysql para usar cargarlo en un DataGrid de FLASH???

Hola amigos ...

tengo un caso

Quiero generar con php un archivo que contenga codigo XML, es decir

gente.php

Código PHP:
<?xml version="1.0" encoding="iso-8859-1"?>
<listado>
<?
$sql
="select * from gente";
$r=mysql_query($sql);

while (
$f=mysql_fetch_array($r))
  {
   echo 
"<alumno>
              <nombre>"
.$f['nombre']."</nombre>
     <apellidos>"
.$f[apellido]."</apellidos>
              <edad>"
.$f['edad']."</edad>
          </alumno>"
;
  }
?>
</listado>
Bueno listo... en verdad si se genera el archivo .php.
Ahora uso el siguiente codigo.. para cargarlo todo en un DataGrid

data.fla

Código PHP:
var listado = new XML();
//Creamos las columnas
miDataGrid.columnNames = ["Nombre""Apellidos","Edad" ];
//Definimos el ancho de las columnas
miDataGrid.getColumnAt(0).width 80;
miDataGrid.getColumnAt(1).width 150;
//Cargamos el documento xml
listado.ignoreWhite true;
listado.load("gente.php");
listado.onLoad = function ()
{
   
//Definimos una variable xmlNodo
   //con el contenido del xml
    
xmlNodo this.firstChild;
      
// y otra total con el numero de alumnos
    
totalxmlNodo.childNodes.length;
    
// Creamos un loop para alimentar el datagrid
    
for (i=0itotali++)
    {
    
nombre xmlNodo.childNodes[i].childNodes[0].firstChild.nodeValue;
    
apellidos xmlNodo.childNodes[i].childNodes[1].firstChild.nodeValue;
    
edad xmlNodo.childNodes[i].childNodes[2].firstChild.nodeValue;
    
_root.miDataGrid.addItem({Nombre:nombreApellidos:apellidosEdad:edad});    
    }

Bueno

El problema es que...


No carga nada...


ya prove cargarlo en un solo text ya tampoco.


que es??????''

Última edición por richardinj; 06/08/2005 a las 10:15
  #2 (permalink)  
Antiguo 06/08/2005, 11:52
Avatar de eldervaz  
Fecha de Ingreso: agosto-2003
Ubicación: lima
Mensajes: 551
Antigüedad: 21 años, 3 meses
Puntos: 0
aqui esta como cargar un DG con xml

http://www.tmeister.net/tutos/index.php?p=8

pero sugiero q uses amfphp, yo recien entre y esta muy bueno

http://www.cristalab.com/foros/viewtopic.php?t=4071
__________________
eldervaz
www.eldervaz.com | www.ini4.com
  #3 (permalink)  
Antiguo 06/08/2005, 13:40
Avatar de richardinj  
Fecha de Ingreso: enero-2005
Ubicación: Ciber Espacio
Mensajes: 2.180
Antigüedad: 19 años, 10 meses
Puntos: 11
pero mi ejemplo esta bien? o esta muy mal...
  #4 (permalink)  
Antiguo 26/09/2005, 15:54
 
Fecha de Ingreso: enero-2004
Mensajes: 39
Antigüedad: 20 años, 10 meses
Puntos: 0
Código PHP:
<?php 
function conectar()
{
    
//echo phpinfo();
   
if (!($link=mysql_connect(localhost root ''))) 
   { 
      echo 
"Error conectando a la base de datos."
      exit(); 
   } 
   if (!
mysql_select_db("calendario",$link)) 
   { 
      echo 
"Error seleccionando la base de datos."
      exit(); 
   } 
   return 
$link
}
  
$cone=conectar(); 
    
$sql="select * from maquinaria";
    
$res=mysql_query($sql,$cone);
    
//$inv='formulario';
    
if (!$res
    {
   die(
'No hay datos:' mysql_error());
    }
    else
    {    
    
$combo="<fechas>
    "
;
    
$combo$combo "";    
    
$filas=mysql_num_rows($res);
  
$i=0;  
    While (
$i<$filas
    {
        
        
$maquinaria=mysql_result($res,$i,"maquinaria");
        
$cantidad=mysql_result($res,$i,"cantidad");
        
$marca=mysql_result($res,$i,"marca");
        
$modelo=mysql_result($res,$i,"modelo");
        
$capacidad=mysql_result($res,$i,"capacidad");
        
$adquisicion=mysql_result($res,$i,"adquisicion");
        
        if(
$cedula==$var)
        {
            
$combo $combo "<dia tarea='"$maquinaria "' fecha='" $cantidad ."' marca='"$marca "' modelo='"$modelo "' capacidad ='"$capacidad "' adquisicion='"$adquisicion "'/>
            "
;            
        }        
        
$i++;
    }    
    
$combo=$combo ." </fechas>";
    }
    
header("Content-type: application/xml");
    echo 
$combo;
?>
amigo de esta manera es que yo genero el xml no se si te funcione

y para el datagrid busca en cristal lab en la parte donde estan los manuales de los componentes y juega con eso
  #5 (permalink)  
Antiguo 26/09/2005, 18:36
Avatar de richardinj  
Fecha de Ingreso: enero-2005
Ubicación: Ciber Espacio
Mensajes: 2.180
Antigüedad: 19 años, 10 meses
Puntos: 11
Exelente... aré todas las pruebas en mi caso...
  #6 (permalink)  
Antiguo 26/09/2005, 23:26
 
Fecha de Ingreso: diciembre-2001
Ubicación: Morelia, México.
Mensajes: 312
Antigüedad: 22 años, 11 meses
Puntos: 0
Creo que te podría faltar un par de llaves extra, así lo hago yo y me trabaja.. importante es que usés trace(tuXML) para que veás que efectivamente está llegando la información, puede ser que haya un error como que falte un punto y coma (;) y por eso no llega nada.

<d1><d2>

<d3>
<v1>XX</v1>
<v2>XX</v2>
</d3>

</d1></d2>

donde <d3> corresponde a cada registro.

Código PHP:
<?php
    session_start
();
    
    include 
'acceso2bdatos.php';
    
$query "select * from sede order by codigo";
             
$resultado mysql_query ($query);
    
    echo 
"<documento><datos>";
    while(
$rs mysql_fetch_array($resultado)) {

    echo 
"<pelicula>
                     <nom>"
.$rs['codigo']."</nom>
            <dir>"
.$rs['nombre']."</dir>
                     </pelicula>"
;
    }
    
    echo 
"</datos></documento>";    
    
    
mysql_free_result($resultado);
    
mysql_close ($conn);
?>
  #7 (permalink)  
Antiguo 27/09/2005, 09:09
Avatar de richardinj  
Fecha de Ingreso: enero-2005
Ubicación: Ciber Espacio
Mensajes: 2.180
Antigüedad: 19 años, 10 meses
Puntos: 11
Todo Correcto....
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 16:22.