-1
我不能爲我的生活弄清楚如何讓這段代碼處理多條記錄。代碼工作正常,它只是插入第一條記錄,然後停止。xml解析foreach循環+只插入一條記錄?
飼料:http://online.computicket.com/web/events/search.rss
的PHP:
<?php
$con=mysqli_connect("localhost","vadevco_reticket","3wer5top","vadevco_reticket");
if(! $xml = simplexml_load_file('feed.xml')) {
echo 'unable to load XML file';
} else {
foreach($xml as $event) {
$idrandom = rand(0,99);
$title = $event->item->title;
$description = $event->item->description;
$link = $event->item->link;
$guid = $event->item->guid;
$pubDate = $event->item->pubDate;
$image_t = $event->item->image_thumb;
$image_l = $event->item->image_large;
$displayDates = $event->item->displayDates;
$sql = "INSERT INTO `vadevco_reticket`.`events` (`title`, `description`, `pubDate`, `image_t`, `image_l`, `displayDates`, `id`, `event_id`) VALUES ('$title', '$description', '$pubDate', '$image_t', '$image_l', '$displayDates','','$idrandom')";
mysqli_query($con,$sql);
foreach($event->item->showDates->showDate as $eventDate) {
$date = $eventDate->date;
$venue = $eventDate->venue;
$complex = $eventDate->complex;
$region = $eventDate->region;
$costs = $eventDate->costs;
$sql2 = "INSERT INTO `vadevco_reticket`.`instances` (`id`, `event_id`, `date`, `venue`, `complex`, `city`, `region`, `costs`) VALUES ('', '$idrandom', '$date', '$venue', '$complex', '$city','$region','$costs')";
mysqli_query($con,$sql2);
}
}
}
?>
如何使它遍歷$項目的所有實例的供給和插入他們都任何建議,將不勝感激。
在此先感謝!
http://php.net/simplexml.examples-basic - 在您的情況:你在,雙犯了一個錯誤somethwere有檢查你循環的每個變量都包含你正在查找的內容然後修復它。這很容易,我們無法做任何事情。 – hakre
另一個提示:將你的代碼分成子程序。讓例程做一個特定的事情。測試每個程序都做得很好,然後把程序放在一起。這通常會自動工作,否則很容易調試。比較:[PHP文件無法輸入部分代碼](http://stackoverflow.com/q/11575531/367456) – hakre
請停止連接查詢並學習如何使用預準備語句。 –