Не до конца записываются данные из XML в базу
Я проходила курс PHP/MySQL, работала с XML, записывала данные XML в базу и столкнулась со следующей проблемой. Я записала код и после его активации в базе данных обнаружила, что не все данные XML перенеслись в базу. Поняла, что перенеслись данные только о тех фильмах, у которых был рейтинг. Пыталась самостоятельно устронить эту проблему, заново переписывая код, но ничего не произошло. Затем я проверила правильный синтаксис и написание тегов. Результат не менялся. Затем я решила скачать исходный код к уроку и действовать с его помощью. Свой код я стёрла и скопировала раннее скачаный код. Результат по прежнему не изменился. Пожалуйста, подскажите мне метод для исправления данной ошибки.
<?php
function insert($name, $desc, $year, $rating, $poster, $category_id) {
$mysqli = new mysqli('localhost', 'root', 'root', 'kinomonster');
if(mysqli_connect_errno()) {
print_f('Соедение не установлено');
exit();
}
$mysqli->set_charset('utf8');
$query = "INSERT INTO movie VALUES(null, '$name', '$desc', '$year', '$rating', '$poster', Now(), '$category_id')";
$result = false;
if( $mysqli->query($query)) {
$result = true;
}
return $result;
}
$xml = simplexml_load_file("xml_files/movies.xml") or die("Error: Cannot create object");
//echo count($xml);
$title = null;
$title_orign = null;
$post = null;
$rating = null;
$year = null;
foreach ($xml as $movie_key => $movie) {
$title = $movie->title_russian;
$title_orign = $movie->title_original;
$year = $movie->year;
foreach ($movie->poster->big->attributes() as $poster_key => $poster) {
$post = $poster;
}
if($movie->imdb) {
$rating = $movie->imdb->attributes()['rating'];
}
insert($title, $title_orign, $year, $rating, $post, 1);
}
echo "<pre>";
print_r($xml);
echo "</pre>";
?>