Почему не добавилась строка в базу данных?

0
<?php 

  $mysqli = new mysqli('localhost', 'root', '', 'kinomonster');

  if(mysqli_connect_errno()){
      printf("Соединение не установлено", mysqli_connect_error());
      exit();
  }

  $mysqli->set_charset('utf8');

  $query = "INSERT INTO movie VALUES(null, 'Безумный Макс', 'олл', '2015', Now())";
  $mysqli->query($query);

  
  $mysqli->close();


 ?>
php
mysql

1 ответов

0

Возможно в структуре базы данных где-то ошиблись. Проверьте.

Также есть инфо из этого урока:

https://fructcode.com/ru/courses/php-and-mysql/video-parse-xml-to-mysql/

Дополнение
При вставке в базу данных вы можете использовать и такой формат записи, где можно указывать название полей для вставки (соблюдая последовательность):

$query = "INSERT INTO movie (`name`, `descriptions`, `year`, `rating`, `poster`, `add_date`, `category_id`) VALUES ('$name', '$desc', '$year', '$rating', '$poster', Now(), '$category_id')";

где после movie вы можете перечислять название полей, в которые будут производиться вставки данных.

Иногда необходимо понять ошибку, почему не происходит вставка в базу данных, для этого замените строчку

    if($mysqli->query($query)) {
        $result = true;
    }
на
    if( $mysqli->query($query) or die( $mysqli->error ) ) {
        $result = true;
    }
добавив "or die( $mysqli->error )" мы говорим, что в случае неудачи нам отображалась ошибка mysqli.

Sign up or Log in to write an answer