Jump to content


Photo

Loading XML into MySQL (Label- Value)

xml mysql

  • Please log in to reply
2 replies to this topic

#1 siric

siric
  • Members
  • PipPipPip
  • Advanced Member
  • 114 posts

Posted 17 June 2017 - 08:23 PM

Hi,

 

I have an XML file to load into MySQL, but it is generated with a label and a value instead of being fully qualified.

 

So instead of 

 

<book>

<name>Lord of the Flies</name>

<author>William Golding</author>

</book>

<book>

<name>War and Peace</name>

<author>Leo Tolstoy</author>

</book>

 

It is like 

 

<book>

<label>name</label>

<value>Lord of the Flies</value>

<label>author</label>

<value>William Golding</value>

</book>

<book>

<label>name</label>

<value>War and Peace</value>

<label>author</label>

<value>Leo Tolstoy</value>

</book>

 

What would be the bext way to go about reading these into variables to push into a MySQL table?

 

Thanks

 

Steve

 

 



#2 Jacques1

Jacques1
  • Members
  • PipPipPip
  • Turtles all the way down
  • 4,224 posts

Posted 17 June 2017 - 09:00 PM

Parse the XML, put the data into a more convenient structure (like an associative array), then use that new structure to pass the values to a prepared statement. Really simple.



#3 siric

siric
  • Members
  • PipPipPip
  • Advanced Member
  • 114 posts

Posted 17 June 2017 - 09:34 PM

Was trying to edit the post to add my code so far -

 

if ($books) { 
foreach ($books->book as $mybooks) { 
 
$label=$mybooks->Label; 
$value=$mybooks->Value; 
 
echo "$label - $value</br>"; 
 
so I get -
 
Lord of the Flies - William Golding
War and Peace - Leo Tolstoy
 
Will try the array.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users