我正在尝试使用PHP将我的XML文件导入mysql数据库,但我仍然遇到问题。
所以这是我的XML,只能在线。
我已经找到了一些解决方案,最好的解决方案在我看来:
<?php
//mysql connection
$conn = mysql_connect("localhost","username","password");
if (!$conn)
{
die('Connection error: ' . mysql_error());
}
$vyberdb = mysql_select_db("motodily", $conn);
if (!$vyberdb)
{
die('Database error: ; ' . mysql_error());
}
//simplexml load xml file
$vmdily = simplexml_load_file('http://export.tipmoto.com/inzerce_xml.php? F=253&R=f028c0d1&MOTO=N&DILY=A');
//loop through parsed xmlfeed and print output
foreach ($vmdily->firma->parts->part as $dilyinfo){
printf("%u",$dily_info->id);
printf("%s",$dily_info->name);
printf("%u",$dily_info->price);
foreach($dilyinfo->models->model as $model){
printf("%s",$model->manufacturer_text);
printf("%s",$model->model_text);
foreach($dilyinfo->photos->photo as $photo){
printf("%s",$photo->width150);
printf("%s",$photo->full);
//insert into databse
mysql_query("INSERT INTO dily (part_id, nazev, cena, vyrobce, model, img150, imgfull) VALUES
(\"$dily_info->id\",\"$dily_info->name\", \"$dily_info->price\", \"$model->manufacturer_text\", \"$model->model_text\", \"$photo->width150\", \"$photo->full\")")
or die(mysql_error());
//show updated records
printf ("Records inserted: %d\n", mysql_affected_rows());
}
}
}
//close connection
mysql_close($conn);
?>
我配置了mysql表,我的所有列都是varchar数据类型,part_id是mediumint。
从xml导入数据仍然存在问题。 ID,名称,价格行为空。仅导入图像网址。
有人知道我该如何解决这个问题。
非常感谢你! :))