Código PHP :
<?php // Variable con el nombre del fichero a importar $xml_file = 'Untitled-1.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 ('Untitled-2.php'); /* Recorremos el XML */ $count=0; foreach ($xml->libro as $libro) { // Inserta el libro en la tabla $codigo=$libro->ref;//almaceno en una variable el valor del nodo "ref" del xml //realizo la consulta a la bd $sql = "SELECT * FROM libros"; $query = mysqli_query($conexion, $sql) or die ('error'); $row = mysqli_fetch_assoc($query); //realizo la comprobacion entre campo codigo y la variable codigo if($codigo != $row['codigo']) { //y desde aki comienza la insercion $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 = mysqli_query($conexion,$qry) or die (mysqli_error($conexion)); // Y necesitamos recuperar el ultimo ID para relacionar sus imagenes $libro_id = mysqli_insert_id($conexion); // Y ahora sus imágenes (en este caso tiene 3) for ($i=0;$i<=2;$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 = mysqli_query($conexion,$qry) or die(mysqli_error($conexion)); } // Incrementamos contado para ver cuantos libros se importan. $count++; } else { echo 'ya existe el codigo "'.$row['codigo'].'"'; } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Documento sin título</title> </head> <body> <table width="80%" align="center" cellpadding="0" cellspacing="0" border="0" style="font-family:'Lucida Sans Unicode', 'Lucida Grande', sans-serif; color:#FFF; font-weight:bold; font-size:1.1em;"> <tr bgcolor="#003399"> <td align="center">id</td> <td align="center">Código</td> <td align="center">Titulo</td> <td align="center">Editorial</td> <td align="center">Autor</td> <td align="center">Precio</td> </tr> <?php /*echo '-------------------------------------------<br/>Total de libros importados:'.$count.'<br/>-------------------------------------------<br/>';*/ $sql = "SELECT * FROM libros ORDER BY precio"; $query = mysqli_query($conexion, $sql) or die ('error'); $num_rows = mysqli_num_rows($query); while($row = mysqli_fetch_assoc($query)) { $id = $row['id']; $codigo = $row['codigo']; $titulo = $row['titulo']; $editorial = $row['editorial']; $autor = $row['autor']; $precio = $row['precio']; if($num_rows > 0) { echo '<tr bgcolor="#eeeeee" style="color:#444;"> <td align="center">'.$id.'</td> <td align="center">'.$codigo.'</td> <td align="center">'.$titulo.'</td> <td align="center">'.$editorial.'</td> <td align="center">'.$autor.'</td> <td align="center">'.$precio.'</td> </tr>'; } } ?> </table> </body> </html>