Foros del Web » Programando para Internet » PHP »

Como puedo generar un archivo .XML a partir de .PHP?

Estas en el tema de Como puedo generar un archivo .XML a partir de .PHP? en el foro de PHP en Foros del Web. Saludos amigos, soy nuevo en el foro y en esto de la "programacion" mi problema es el siguiente: Necesito esta estructura xml para un playlist ...
  #1 (permalink)  
Antiguo 08/10/2007, 08:25
 
Fecha de Ingreso: octubre-2007
Mensajes: 7
Antigüedad: 16 años, 6 meses
Puntos: 0
Como puedo generar un archivo .XML a partir de .PHP?

Saludos amigos, soy nuevo en el foro y en esto de la "programacion" mi problema es el siguiente:

Necesito esta estructura xml para un playlist de video donde los datos sean extraidos de una tabla de la base de datos:

<playlist version="1" xmlns="http://xspf.org/ns/0/">
<trackList>
<track>
<title></title>
<creator></creator>
<location></location>
</track>
</trackList>
</playlist>

El caso es que he construido un archivo php que se conecta a mi base de datos , pero no logro generar un archivo de salida .XML .

Si me pudieran ayudar se los agradeceria... Saludos y muchas gracias
  #2 (permalink)  
Antiguo 08/10/2007, 08:42
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 7 meses
Puntos: 55
Re: Como puedo generar un archivo .XML a partir de .PHP?

lo q deberias hacer es recolectar los datos de la bbdd y luego irlos poniendo en una variable
while(){
$xml.="bla bla bla";
}
luego con un
file_put_contents("archivo.xml",$xml);
__________________
Degiovanni Emilio
developtus.com
  #3 (permalink)  
Antiguo 08/10/2007, 08:45
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Re: Como puedo generar un archivo .XML a partir de .PHP?

Te voy a explicar como hacerlo a partir de "echos" o en otras palabras de generarlo con outputs en la misma pagina sin crear un xml nuevo.

Suponiendo que vas a mantener la misma estructura:
Código PHP:
//esto solo lo copias y pegas en el php y lo agregas en una etiqueta echo
echo '<playlist version="1" xmlns="http://xspf.org/ns/0/">';
//luego si tienes varios tracklist esto debera ser segun la cantidad de datos
//que vengan en la consulta
while($dataTL mysql_fetch_array($resultTL)){
//enviamos la etiqueta para comenzar un nuevo tracklist
echo '<trackList>';
    
//aca comienza el loop de cada track
    
while($dataT mysql_fetch_array($resultT)){
    
//envias la etiqueta de track
    
echo '<track>';
    
//enviamos la info del track
    
echo '<title>'.$dataT["title"].'</title>';
    echo 
'<creator>'.$dataT["creator"].'</creator>'
    echo 
'<location>'.$dataT["location"].'</location>'
    echo 
'</track>';
    
//terminamos el loop de track
    
}
</
trackList>
//aca terminamos el loop de tracklist
}
echo 
'</playlist>';
//y listo. 
Para que tu xml puedas verlo indentado agregale la etiqueta br al final de cada echo.

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #4 (permalink)  
Antiguo 08/10/2007, 09:16
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Re: Como puedo generar un archivo .XML a partir de .PHP?

No se te olvide tambien enviar la cabecera adecuada para que se pueda leer como un XML, antes del script que te puso Marvin:
Código PHP:
header("Content-type: text/xml"); 
Saludos.
  #5 (permalink)  
Antiguo 08/10/2007, 09:28
 
Fecha de Ingreso: octubre-2007
Mensajes: 7
Antigüedad: 16 años, 6 meses
Puntos: 0
Re: Como puedo generar un archivo .XML a partir de .PHP?

Gracias Marvin lo que pasa es que necesito generar un archivo xml, porq el reporductor swf no me reconoce un .php por medio de flashvars, por lo cual necesitaria si, generar un archivo .xml a partir de ese php.

Salud amigo y gracias!!!!



Cita:
Iniciado por Marvin Ver Mensaje
Te voy a explicar como hacerlo a partir de "echos" o en otras palabras de generarlo con outputs en la misma pagina sin crear un xml nuevo.

Suponiendo que vas a mantener la misma estructura:
Código PHP:
//esto solo lo copias y pegas en el php y lo agregas en una etiqueta echo
echo '<playlist version="1" xmlns="http://xspf.org/ns/0/">';
//luego si tienes varios tracklist esto debera ser segun la cantidad de datos
//que vengan en la consulta
while($dataTL mysql_fetch_array($resultTL)){
//enviamos la etiqueta para comenzar un nuevo tracklist
echo '<trackList>';
    
//aca comienza el loop de cada track
    
while($dataT mysql_fetch_array($resultT)){
    
//envias la etiqueta de track
    
echo '<track>';
    
//enviamos la info del track
    
echo '<title>'.$dataT["title"].'</title>';
    echo 
'<creator>'.$dataT["creator"].'</creator>'
    echo 
'<location>'.$dataT["location"].'</location>'
    echo 
'</track>';
    
//terminamos el loop de track
    
}
</
trackList>
//aca terminamos el loop de tracklist
}
echo 
'</playlist>';
//y listo. 
Para que tu xml puedas verlo indentado agregale la etiqueta br al final de cada echo.

Suerte!
  #6 (permalink)  
Antiguo 08/10/2007, 09:51
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Re: Como puedo generar un archivo .XML a partir de .PHP?

Cita:
Iniciado por GatorV
No se te olvide tambien enviar la cabecera adecuada para que se pueda leer como un XML, antes del script que te puso Marvin:
Un pequeño gran detalle

deuskal entonces debes enviarlo como emiliodeg lo describe...

Ps.: Si tienes acceso al .fla en vez de usar flashvars puedes utilizar SendAndLoad para tomar los datos desde php :D

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #7 (permalink)  
Antiguo 08/10/2007, 10:46
 
Fecha de Ingreso: octubre-2007
Mensajes: 7
Antigüedad: 16 años, 6 meses
Puntos: 0
Re: Como puedo generar un archivo .XML a partir de .PHP?

Si puedieran ayudarme a construir la estructura bajo ese ejemplo se los agradeceria muchisimo...! ;)


Salud amigos y muchas gracias!

Cita:
Iniciado por Marvin Ver Mensaje
Un pequeño gran detalle

deuskal entonces debes enviarlo como emiliodeg lo describe...

Ps.: Si tienes acceso al .fla en vez de usar flashvars puedes utilizar SendAndLoad para tomar los datos desde php :D

Suerte!
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 12:12.