Foros del Web » Programando para Internet » PHP »

Duda con un articulo de la FAQ

Estas en el tema de Duda con un articulo de la FAQ en el foro de PHP en Foros del Web. Amigos, estoy intentando aplicar las funciones de parsear un xml y pasarlo a una base de datos con PHP que me muestran en este articulo ...
  #1 (permalink)  
Antiguo 01/02/2010, 09:37
Avatar de tonchii  
Fecha de Ingreso: noviembre-2008
Mensajes: 159
Antigüedad: 16 años
Puntos: 2
Pregunta Duda con un articulo de la FAQ

Amigos, estoy intentando aplicar las funciones de parsear un xml y pasarlo a una base de datos con PHP que me muestran en este articulo

http://www.forosdelweb.com/wiki/PHP:...lizando_PHP%3F

Aqui el codigo:
Código PHP:
Ver original
  1. <?php
  2.   $g_itemss = array();
  3.   $g_elem_item = null;
  4.  
  5.   function startElement( $parser, $name, $attrs )  
  6.   {
  7.   global $g_itemss, $g_elem_item;
  8.   if ( $name == 'CAMPOS' ) $g_itemss []= array();
  9.   $g_elem_item = $name;
  10.   }
  11.  
  12.   function endElement( $parser, $name )  
  13.   {
  14.   global $g_elem_item;
  15.   $g_elem_item = null;
  16.   }
  17.  
  18.   function textData( $parser, $text )
  19.   {
  20.   global $g_itemss, $g_elem_item;
  21.   if ( $g_elem_item == 'VALOR1' ||
  22.   $g_elem_item == 'VALOR2' ||
  23.   $g_elem_item == 'VALOR3' ||
  24.   $g_elem_item == 'VALOR4' )
  25.   {
  26.   $g_itemss[ count( $g_itemss ) - 1 ][ $g_elem_item ] = $text;
  27.   }
  28.   }
  29.  
  30.   $parser = xml_parser_create();
  31.  
  32.   xml_set_element_handler( $parser, "startElement", "endElement" );
  33.   xml_set_character_data_handler( $parser, "textData" );
  34.  
  35.   $f = fopen( 'archivo.xml', 'r' );
  36.  
  37.   while( $data = fread( $f, 4096 ) )
  38.   {
  39.   xml_parse( $parser, $data );
  40.   }
  41.  
  42.   xml_parser_free( $parser );
  43.  
  44.   foreach( $g_itemss as $item_booked )
  45.   {
  46.  
  47.     $numorden = $item_booked['valor1'];
  48.     $tipoint = $item_booked['valor2'];
  49.     $numoper = $item_booked['valor3'];
  50.     $sector = $item_booked['valor4'];
  51.  
  52.  
  53. include("config.php"); //archivo de conexión a la base de datos
  54.  
  55. //////////////////////////////////////
  56. //////////////////////////////////////
  57.     mysql_query("INSERT INTO tabla (mis_campos)values($mis_variables)")or die(mysql_error());
  58.     mysql_free_result($grabaITEMS);
  59.     mysql_close ();
  60. }
  61. ?>


Lo q no entiendo es la parte final donde me muestra lo de la BD. No se que valores aplicar :S.
__________________
Por que solo seremos dueños de aquello que creemos y amemos

Última edición por tonchii; 01/02/2010 a las 10:07
  #2 (permalink)  
Antiguo 01/02/2010, 10:07
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: Duda con un articulo de la FAQ

Acuerdate que esto es un foro, puedes tomar minutos o horas, tal vez un dia en que se te conteste. ¿A que te refieres con la parte final? Eso lo que hace es añadir información a una tabla en la base de datos.

Edito:
¿Que tanto dominas MySQL?
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Última edición por abimaelrc; 01/02/2010 a las 10:13
  #3 (permalink)  
Antiguo 01/02/2010, 10:25
Avatar de tonchii  
Fecha de Ingreso: noviembre-2008
Mensajes: 159
Antigüedad: 16 años
Puntos: 2
Respuesta: Duda con un articulo de la FAQ

Si, si. Pero no se cuales son las variables, por q he intentado hacer un echo de las variables del foreach, y no se muestra nada :S. Entonces no se de q variables esta hablando.
__________________
Por que solo seremos dueños de aquello que creemos y amemos

Etiquetas: faq, articulos
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 02:50.