11/05/2012, 09:50
|
| | Fecha de Ingreso: enero-2012
Mensajes: 109
Antigüedad: 12 años, 10 meses Puntos: 0 | |
Respuesta: Guardar constantemente XML a MySQL Este es el codigo que podría utilizar para subir el XML a MySQL.
Pero necesito que sea cada 20 minutos
Código:
/***************************************************************
* Conection Params Page - importxml.php
* Author: J. Manuel Navarro ( http://www.manuelnavarro.com )
*
* Script ejemplo de importación de XML a mySql con PHP 5
***************************************************************/
// Variable con el nombre del fichero a importar
$xml_file = 'libros.xml';
if (file_exists($xml_file)) {
$xml = simplexml_load_file($xml_file);
} else {
exit('Error al intentar abrir el fichero '.$xml_file);
}
// Todo bien asi que abrimos BD para importar
require 'config.php';
/* Recorremos el XML */
$count=0;
foreach ($xml->libro as $libro) {
// Inserta el libro en la tabla
$qry = "INSERT INTO libros ".
"(codigo, titulo, editorial, autor, descripcion,precio)".
" VALUES ('$libro->ref', ".
"'$libro->titulo', ".
"'$libro->editorial', ".
"'$libro->autor', ".
"'$libro->desc', ".
$libro->precio.")";
// Ahora ejecutamos el INSERT en la BD
$result = mysql_query($qry) or die(mysql_error());
// Y necesitamos recuperar el ultimo ID para relacionar sus imagenes
$libro_id = mysql_insert_id ();
// Y ahora sus imágenes (en este caso tiene 3)
for ($i=1;$i<=3;$i++) {
$img_url = $libro->images->image[$i]->url;
$img_des = $libro->images->image[$i]->titulo;
$qry = "INSERT INTO img_libros (libro_id, url, descripcion) ".
"VALUES ($libro_id, '$img_url', '$img_des')";
$result = mysql_query($qry) or die(mysql_error());
}
// Incrementamos contado para ver cuantos libros se importan.
$count++;
}
echo "<br/>";
echo "-------------------------------------------<br/>";
echo "Total de libros importados: $count properties<br/>";
echo "-------------------------------------------<br/>";
?>
|