Проблема с PHP/MySQL базами данных, добавлением в базу данных
Не понимаю, почему не добавляется, битый час уже пытаюсь понять.
<?php
$servername = "localhost";
$username = "test";
$password = "test";
$database = "test_users";
$connect = mysqli_connect($servername, $username, $password, $database);
mysqli_select_db($connect, $database);
if (isset($_POST['Submit'])) {
$username = $_POST['username'];
$login = $_POST['login'];
$password = $_POST['password'];
$repeat_password = $_POST['r_password'];
if ($password == $repeat_password) {
$password = md5($password);
$query = mysqli_query($connect, "INSERT INTO 'users' ('id', 'username', 'login', 'password') VALUES ('', '$username', '$login', '$password')");
echo "Sucessfully registered!";
}
else {
die('Your password dont active!');
echo "Not a successfully!";
}
}
?>
Ответы (1 шт):
Это хороший и правильный вопрос.
Возникает он очень часто и очень часто на него дают неправильные ответы. А привильным ответом будет спросить у базы данных.
Всякий раз, когда БД не может выполнить SQL запрос, она выдаёт сообщение об ошибке, в котором подробно объясняется, что не так с запросом.
К сожалению, по умолчанию ошибки mysql в РНР не транслируются. Чтобы это исправить, надо добавить всего одну строчку к коду соединения с базой данных:
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
после этого mysqli начнет выбрасывать исключение с текстом ошибки от mysql, и это очень удобно.
После получения сообщения об ошибке его надо прочитать, и если непонятно - попробовать перевести и вбить в Google. Обычно сразу находится много ответов с решением