Foros del Web » Programando para Internet » PHP »

Problemas al importar de xml a sql

Estas en el tema de Problemas al importar de xml a sql en el foro de PHP en Foros del Web. Hola, Tengo un problema al intentar importar algunos campos desde un archivo xml a mi base de datos. El xml sería algo parecido a: Código: ...
  #1 (permalink)  
Antiguo 30/03/2015, 06:55
Avatar de Josantonius  
Fecha de Ingreso: enero-2015
Mensajes: 15
Antigüedad: 9 años, 2 meses
Puntos: 0
Pregunta Problemas al importar de xml a sql

Hola,

Tengo un problema al intentar importar algunos campos desde un archivo xml a mi base de datos.

El xml sería algo parecido a:

Código:
<ArticulosD>
    <ArticuloD>
      <codigo>10003</codigo>
      <familia>DIVERTIDOS</familia>
      <subfamilia>BEBIDAS</subfamilia>
      <ean>8003558960408</ean>
      <talla>ST</talla>
      <hashtalla>821272cc705396659de1098ed38693dc</hashtalla>
      <descripcion>SHAPE ICE MAKER</descripcion>
      <descripcionori>SHAPE ICE MAKER</descripcionori>
      <novedad>false</novedad>
      <promocion>false</promocion>
      <explicacion>&lt;p&gt;&lt;strong&gt;SHAPE ICE MAKER&lt;/strong&gt;.&lt;br /&gt; &lt;br /&gt; cubitera rígida para 4 cubitos con forma de esperma.&lt;br /&gt; &lt;</explicacion>
      <explicacion_texto>SHAPE ICE MAKER. Cubitera rígida para 4 cubitos.</explicacion_texto>
      <fabricante>GIRLS NIGHT OUT</fabricante>
      <subfabricante>CLASSICS</subfabricante>
      <categorias>
      <string>PRODUCTO &gt;JUGUETES &gt;BON</string>
      </categorias>
      ...
   </ArticulosD>
</ArticuloD>
Los campos marcados en negrita no consigo importarlos a la base de datos, me da el siguiente error:

Error en moreinfo2: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AS, 16X30CM.', '', 'Mopa Ecologica Micro Fibras, L'AS, 16X30cm.'' at line 5

Si no importo esos campos todo parece ir bien, el script que utilizo es el siguiente:

Código PHP:
foreach ($xml->ArticulosD->ArticuloD as $articulo) {

$qry "INSERT INTO moreinfo (codigo, categorias, descripcion, subfabricante, explicacion_texto)
        VALUES (
        '$articulo->codigo', 
        '$articulo->categorias',
        '$articulo->descripcion',
        '$articulo->subfabricante',
        '$articulo->explicacion_texto')"
;

    
$result mysql_query($qry) or die("Error en moreinfo2: " mysql_error());

    
$qry2 "INSERT INTO categorias (codigo, familia, subfamilia, subfamilia2, subfamilia3, subfamilia4)
        VALUES (
        '$articulo->codigo', 
        '$articulo->familia', 
        '$articulo->subfamilia',
        '$articulo->subfamilia2',  
        '$articulo->subfamilia3',  
        '$articulo->subfamilia4')"
;

    
$result2 mysql_query($qry2) or die("Error en categorias2: " mysql_error());

Solo se me ocurre que sea por los caracteres (´&gt;), pero tampoco, porque el campo descripcion solo es texto en mayúsculas y también da error.

¿Alguna sugerencia?

Gracias, un saludo.
  #2 (permalink)  
Antiguo 30/03/2015, 07:08
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Problemas al importar de xml a sql

OFF TOPIC en MySQL.
Leer las reglas del foro de BBDD, por favor.

La importación no la haces a puro MySQL, sino en PHP, ergo tu problema está en PHP.

Movido al foro correcto.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: campo, mysql, sql, xml
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 15:29.