Задание 62 PHP/MySQL

1

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

<?php
function insert($name, $desc, $year, $rating, $poster, $category_id) {
$mysqli = new mysqli('localhost', '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) or die( $mysqli->error )) {
$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>";?>


выводит ошибку

Data truncated for column 'rating' at row 1
php
mysql
insert

6 ответов

3

1) Проверьте в phpmyadmin структуру таблицы movie поле rating, верно ли задали тип поля.

2) Проверьте какие данные передаются из xml файла в $movie->imdb->attributes()['rating'] 

2

Проверить 2й пункто можно, если вывести в цикле:

echo $movie->imdb->attributes()['rating']

Из БД удалять phpmyadmin не нужно.

3

А настройки точно правильные php?

Warning: Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini. in Unknown on line 0

Можно попробовать раскомментировать строчку ;max_input_vars = 10000 в php.ini. Файл php.ini можно открыть через XAMPP - config - PHP (php.ini). Раскомментировать можно убрав ; перед max_input_vars = 10000 и не забудьте перезапустить apache в XAMPP после этого.

И настройки XAMPP и PHP не меняли? Если меняли, можно попробовать переустановить XAMPP. 

2

Как проверить 2 пункт?

попробовал другой файл, выдал такую же ошибку, но данные добавились. Попробовал удалить из БД phpmyadmin выдает ошибку и данные не удаляются.

Ошибка такая:

Warning: Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini. in Unknown on line 0
phpMyAdmin - Error
Error during session start; please check your PHP and/or webserver log file and configure your PHP installation properly. Also ensure that cookies are enabled in your browser.
2

Я хочу удалить содержимое таблицы из БД, но ничего не удаляется и выводит ошибку

Warning: Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini. in Unknown on line 0
phpMyAdmin - Error
Error during session start; please check your PHP and/or webserver log file and configure your PHP installation properly. Also ensure that cookies are enabled in your browser.
2

через echo выводит 5.7
5.4
6.4
6.4
8.3
7.3
8.0

Sign up or Log in to write an answer