How to insert XML to Mysql with php?
I want to insert data in tag count to xml_id
field and data in tag image to image_url
field to Mysql. I tried this code with xml file, but didnt' work. What am I doing wrong with code. Please tell me.
Here is XML.
<?xml version="1.0" encoding="utf-8"?>
<Listing>
<Listing>
<count>1</count>
<Ad_Type>Sale</Ad_Type>
<Unit_Type>Apartment</Unit_Type>
<Images>
<image>http://example.com/watermark?c_id=1110&l_id=1908007&aid=1461&image=e296915d71.jpg</image>
<image>http://example.com/watermark?c_id=1110&l_id=1908007&aid=1461&image=acf49f1088.jpg</image>
<image>http://example.com/watermark?c_id=1110&l_id=1908007&aid=1461&image=10a639c856.jpg</image>
<image>http://example.com/watermark?c_id=1110&l_id=1908007&aid=1461&image=9f9db4243e.jpg</image>
<image>http://example.com/watermark?c_id=1110&l_id=1908007&aid=1461&image=v127aca728.jpg</image>
<image>http://example.com/watermark?c_id=1110&l_id=1908007&aid=1461&image=g19bdac010.jpg</image>
</Images>
</Listing>
<Listing>
<count>2</count>
<Ad_Type>Sale</Ad_Type>
<Unit_Type>Apartment</Unit_Type>
<Images>
<image>http://example.com/watermark?c_id=1110&l_id=1907998&aid=1461&image=vv96915d71.jpg</image>
<image>http://example.com/watermark?c_id=1110&l_id=1907998&aid=1461&image=g19bdac010.jpg</image>
<image>http://example.com/watermark?c_id=1110&l_id=1907998&aid=1461&image=8127aca728.jpg</image>
<image>http://example.com/watermark?c_id=1110&l_id=1907998&aid=1461&image=9f9db4243e.jpg</image>
</Images>
</Listing>
</Listing>
This is my code.
<?php
include("connection.php");
$xmlUrl = "import_dubai.xml"; // XML ไฟล์
$xmlStr = file_get_contents($xmlUrl);
$xml = preg_replace('#&(?=[a-z_0-9]+=)#', '&', $xmlStr);
foreach($xml -> Listing as $Listing1){ // Listing => array
foreach($Listing1 -> Listing as $Listing){ // Listing => array
$Listing = $Listing -> Listing;
$count = $Listing -> count;
foreach($Listing -> Images as $Images){ // Images => array
$image = $Images -> image;
echo '<br>'.$Listing1 -> Listing.' '.$Listing -> count.' '.$Listing -> Images.' '.$Images -> image. '<br>';
$result=mysql_query("insert into xml_image ('xml_id','image_url') values ('$count','$image')");
}
}
}
if (!$result){
echo 'Mysql Error';
} else{
echo ' Success';
}
?>