0

Есть простая форма регистрации

<form action="" method="POST">
    <input name="login">
    <input name="password" type="password">
    <input type="submit">
</form>

Реализую регистрацию следующим образом

session_start();

$host = 'localhost'; $user = 'root'; $pass = ''; $name = 'users';

$link = mysqli_connect($host, $user, $pass, $name);

if (!empty($_POST['login']) and !empty($_POST['password'])) { $login = $_POST['login']; $password = password_hash($_POST['password'], PASSWORD_DEFAULT);

$query = &quot;SELECT * FROM users WHERE login='$login'&quot;;
$result = mysqli_query($link, $query);
$user = mysqli_fetch_assoc($result);

if (empty($user)) {
    $query = &quot;INSERT INTO users SET login='$login', password='$password'&quot;;
    mysqli_query($link, $query);

    $_SESSION['auth'] = true;
    $id = mysqli_insert_id($link);
    $_SESSION['id'] = $id;
} else {
    echo 'Login is unavailable';
}

}

Первый запрос в базу проходит (проверяю логин), а вот второй на вставку в бд (собственно регистрация) - нет. Просветите в чем беда.

Canty
  • 41
  • читаем дубликат - в частности: включить все ошибки, отладка – Алексей Шиманский Mar 11 '22 at 15:49
  • И как обычно SQL-инъекции. Да кто ж вас всех так учит-то? – andreymal Mar 11 '22 at 16:19
  • Ошибки включены но ничего не выводит. На запрос возвращает false. – Canty Mar 11 '22 at 16:34
  • значит запрос неверный. надо смотреть полностью сформированный запрос, выполнить его в бд и посмотреть ошибку....... хотя mysqli есть такая штука как https://www.php.net/manual/ru/mysqli.error.php – Алексей Шиманский Mar 11 '22 at 16:43
  • А лучше для начала изучить синтаксис базовых запросов Mysql и понять что insert into пишется по-другому – Алексей Шиманский Mar 11 '22 at 16:44
  • @АлексейШиманский INSERT INTO поддерживает оба варианта: и через VALUES и через SET. – u_mulder Mar 11 '22 at 19:02
  • @u_mulder для этого нужно ставить специальное расширение. А стандартный синтаксис другой. И пользуются им в 99% случаев, исключение составляют извращенцы)) – Алексей Шиманский Mar 11 '22 at 19:07
  • var_dump($user) что выводит? (после SELECT запроса) – Sergey Moskalenko Mar 11 '22 at 22:28

0 Answers0