Comunidad de diseño web y desarrollo en internet online

Agregar registro en archivo XML con PHP

Citar            
MensajeEscrito el 21 May 2009 09:49 pm
Hola buenas tardes,


Estoy desarrollando un juego con flash y actionscript, pero necesito guardar los datos del jugador en XML y por todo lo que he investigado tengo que hacerlo con un lenguaje de servidor como PHP, asp, etc.
Por esta razon necesito por favor que me ayuden con el codigo en php para guardar el nombre y correo de la persona en un archivo XML por medio de PHP.
Les agradezco su ayuda urgente con esto por favor.



Saludos

Por vcapeluto

13 de clabLevel



 

firefox
Citar            
MensajeEscrito el 22 May 2009 01:42 am
mejor eso se guarda directamente en la base de datos y por medio de php `puedes generar el xml dinamicamente muestranos como es la estructura de el documento xml

Por talcual

686 de clabLevel



 

Colombia

firefox
Citar            
MensajeEscrito el 24 May 2009 08:23 pm
La estructura seria esta:

<?xml version="1.0" encoding="utf-8"?>
<ficha>
<nombre>Angel</nombre>
<apellido>Barbero</apellido>
<correo>[email protected] </direccion>
</ficha>
<ficha>
<nombre>Carlos</nombre>
<apellido>Mercado</apellido>
<correo>[email protected] </direccion>
</ficha>

Como sugieres que se guarde directamente en la base de datos "talcual" ?

Saludos

Por vcapeluto

13 de clabLevel



 

firefox
Citar            
MensajeEscrito el 24 May 2009 08:40 pm
Hola vcapeluto, lo que talcual quizo decir es que creas una tabla con 3 campos (nombre, apellido y correo), le agregas registros mediante un formulario y cuando necesites llamar a TuArchivo.xml llamas a TuArchivo.php, que tendría el siguiente código:

Código :

<?php
header( "Expires: Mon, 8 Sep 2003 01:00:00 GMT" );  
header( "Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT" );  
header( "Cache-Control: no-cache, must-revalidate" );  
header( "Pragma: no-cache" );  
?>
<?xml version="1.0" encoding="utf-8"?>
<?php
$link = mysql_connect("localhost", root, "password");
mysql_select_db("tuBaseDeDatos",$link);
$result = mysql_query("SELECT * FROM tuTabla", $link);
while($row = mysql_fetch_array($result)){ ?>
   <ficha>
        <nombre><?php echo $row["nombre"];?></nombre>
      <apellido><?php echo $row["apellido"];?></apellido>
      <correo><?php echo $row["correo"];?></correo>
   </ficha>
<?php
}
mysql_free_result($result);
mysql_close($link); 
?>

Espero te sirva, saludos!

Por elmaick123

5 de clabLevel



 

firefox
Citar            
MensajeEscrito el 24 May 2009 10:23 pm
Claro, si este codigo me sirve de mucho, la pregunta es que porque pasarlo directamente a MySQL si se puede guardar directo en XML por medio de php tambien? no es asi?
Necesito hacerlo lo mas optimizado posible.


Saludos

Por vcapeluto

13 de clabLevel



 

firefox
Citar            
MensajeEscrito el 25 May 2009 05:50 am
es mejor con el mysql pues sino tendras muchos archivos xml regados todos por hay y creeme q no seria algo bueno ademas si usas el mysql estaras sincronizado con cualquier otra aplicacion que necesite esos datos y como por ejemplo una aplicacion en ajax lees el xml de el mysql y listo no y tendras problemas es mas recomendable un xml dinamico que un xml estatico saludos

Por talcual

686 de clabLevel



 

Colombia

firefox
Citar            
MensajeEscrito el 25 May 2009 09:04 pm
No entendi porque van a haber varios archivos xml regados por ahi, es solo un archivo "usuarios.xml" que va a haber con toda la data.
Ahora haciendolo como dices primero en Mysql como se haria para pasarlo a XML facilmente?

Saludos

Por vcapeluto

13 de clabLevel



 

firefox
Citar            
MensajeEscrito el 25 May 2009 10:10 pm
para pasarlo a xml desde el mysql se tomaria codigo php para generar un archivo xml pasandole la cabecera header como si fuese un xml despues lo que se hace es hacer un manejo de ciclos y estas cosas para escribir todo el archivo xml es este caso el xml serviria de puente entre el flash y la base de datos es mejor pues estos archivos xml fisicos pueden ser accedidos por medio del navegador claro puedes mejorar la seguridad para que no tengas problemas con eso, pero con mysql no necesitaras eso saludos

Por talcual

686 de clabLevel



 

Colombia

firefox
Citar            
MensajeEscrito el 26 May 2009 04:32 am
amigo talcual, la verdad la seguridad no es un tema de preocuparse en este caso ya que es para un juego que va a estar en una maquina de un evento en particular, nadie se mete en esas maquinas y si se meten pues no hay informacion de interes ahi.
Que pasa si con codigo php lo guardo directo en xml y despues con una rutina de actionscript lo leo (de hecho existen rutinas creadas con ese fin por internet) es unicamente para que el juego guarde la informacion en alguna parte, como para que no quede en el aire y despues mostrar los primeros 10 lugares y sus puntuaciones. Hasta se puede guardar en archivos de texto planos, pero quiero hacerlo en archivos xml ya que son mas elaborados y pueden ser leidos por cualquier programa cuando se requiera. Que te parece?

Saludos

Por vcapeluto

13 de clabLevel



 

msie7
Citar            
MensajeEscrito el 26 May 2009 05:39 am
pues si tambien cuantos usuarios utilizaran el juego esa es otra variable que tienes que tener en cuenta pues de nada te servira un archivo xml de 5mb jajaja pero bueno la utilizacion de archivos planos tbn es muy rapida en este caso un archivo plano me refiero al xml saludos de nuevo y pues si quieres un xml existen muchas formas , mediante dom, o manualmente con fwrite de todos modos ya sabes cual es la opcion que yo utilizaria

Por talcual

686 de clabLevel



 

Colombia

firefox
Citar            
MensajeEscrito el 06 Feb 2011 10:47 pm

talcual escribió:

es mejor con el mysql pues sino tendras muchos archivos xml regados todos por hay y creeme q no seria algo bueno ademas si usas el mysql estaras sincronizado con cualquier otra aplicacion que necesite esos datos y como por ejemplo una aplicacion en ajax lees el xml de el mysql y listo no y tendras problemas es mas recomendable un xml dinamico que un xml estatico saludos


creo q a veces resulta más recomendable... pero si vas a crear un xml de gran cantidad de data... me parece algo tonto generarlo cada vez con php... cuando sería más sencillo agregar un campo al final...

x ejemplo un rss... a mi parecer sería mas óptimo agregar un campo... q pedir cada vez al xml q te devuelva los de una BD... xq si tienes miles de registros ... sería más rapido tenerlo estático el xml para leerlo en menos tiempo ... :cool:

Por laurencehr

0 de clabLevel



 

chrome
Citar            
MensajeEscrito el 07 Feb 2011 06:10 am
pero para rendimiento puedes usar una de las muchas herramientas de administracion de cache o simplemte creas una, para que pues no tengas problemas con la recarga del servidor es basicamente lo que hacen los cms como joomla, wordpress, drupal entre otros es una solucion muy buena porq tener un XML con 1000 registros nunca sera igual a realizar una consulta de 1000 registros porque esta ultima la podrias optimizar para que se procese mas rapido ademas de poder jugar con ella en lo que se refiere a orden y demas. piensa en eso tbn utilidad + usabilidad + rendimiento. ;)

Por talcual

686 de clabLevel



 

Colombia

firefox

 

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