PHP 62 УРОК

1

После того как поместил данные в insert, в браузере выдает такую ошибку

Notice: Undefined variable: mysqli in C:\xampp\htdocs\kinomonster\index.php on line 9

Fatal error: Uncaught Error: Call to a member function set_charset() on null in C:\xampp\htdocs\kinomonster\index.php:9 Stack trace: #0 C:\xampp\htdocs\kinomonster\index.php(44): insert(Object(SimpleXMLElement), Object(SimpleXMLElement), Object(SimpleXMLElement), NULL, Object(SimpleXMLElement), 1) #1 {main} thrown in C:\xampp\htdocs\kinomonster\index.php on line 9

Код писал как на видио

<?php
function insert($name, $desc, $year, $rating, $poster, $category_id) {
$mysgli = new mysqli('localhost', 'root', '', 'kinomonster');
if(mysqli_connect_errno()) {
print_f("соединение не установлено");
exit();
}

$mysqli->set_charset('utf8');

$query = "INSERT INTO movie VALUES(null, '$name', '$desc', '$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>";

?>

xml

2 ответов

2

Судя по всему, у вас ошибка в названии переменной. Вы написали "$mysgli", а должно быть "mysqli".

$mysgli = new mysqli('localhost', 'root', '', 'kinomonster'); // здесь ошибка
2

Да верно там я допустил ошибку, это не внимательность и еще, вместо xml_files нужно писать просто xml

Sign up or Log in to write an answer