Loading...
PHP/MySQL | Помогите с кодом регистрации
Saw,
$id = $pdo->prepare("SELECT id FROM users WHERE login = ?");
$id->execute([$login]);
$id->fetch(PDO::FETCH_ASSOC);
if (!empty($row['id'])) {
exit ("Извините, введённый вами логин уже зарегистрирован. Введите другой логин.");
} else {
$reg = $pdo->prepare("INSERT INTO users (login,password) VALUES(':login',':password')");
$reg->bindParam(':login', $login);
$reg->bindParam(':password', $password);
$reg->execute();
}
if ($reg=='TRUE') {
echo "Вы успешно зарегистрированы! Теперь вы можете зайти на сайт. <a href="/">Главная страница</a>";
} else {
echo "Ошибка! Вы не зарегистрированы.";
}
?>
$reg == 'TRUE' с какого перепугу оно будет равно строке 'TRUE', такого никогда не будет
Gazro,

$id = $pdo->prepare("SELECT id FROM users WHERE login = ?");
$id->execute([$login]);
$row = $id->fetch(PDO::FETCH_ASSOC);
if (!empty($row['id'])) {
exit ("Извините, введённый вами логин уже зарегистрирован. Введите другой логин.");
} else {
$reg = $pdo->prepare("INSERT INTO users (login,password) VALUES(?, ?)");
$reg->execute([$login, $password]);
}
if ($reg) {
echo "Вы успешно зарегистрированы! Теперь вы можете зайти на сайт. <a href="/">Главная страница</a>";
} else {
echo "Ошибка! Вы не зарегистрированы.";
}

пробуй) )
________
посл. ред. 29.07.2017 в 20:31; всего 1 раз(а); by Saw
shadrvlad, вообще убрать последний if?
Gazro (29.07.2017 в 20:30)
shadrvlad, вообще убрать последний if?

Не так проверять, такого никогда просто не будет
Saw, данные в базу заносит как надо) спасибо огромное. Но вот ошибку выводит:
Warning: Division by zero in /var/www/gaz418/data/www/vitus.ga/save.php on line 31

________
посл. ред. 29.07.2017 в 20:36; всего 1 раз(а); by Gazro
Gazro (29.07.2017 в 20:35)
Saw, данные в базу заносит как надо) спасибо огромное. Но вот ошибку выводит:
Warning: Division by zero in /var/www/gaz418/data/www/vitus.ga/save.php on line 31


какая 31 строка? посмотри её в построчном редакторе
Saw,
[31] echo "Вы успешно зарегистрированы! Теперь вы можете зайти на сайт. <a href="/">Главная страница</a>";
$id = $pdo->prepare("SELECT id FROM users WHERElogin = ?");
$id->execute([$login]);
$row = $id->fetch(PDO::FETCH_ASSOC);
if (!empty($row['id'])) {
$err = true;
exit ("Извините, введённыйвами логин уже зарегистрирован. Введите другой логин.");
} else {
$err = false;
$reg = $pdo->prepare("INSERT INTO users (login,password) VALUES(?, ?)");
$reg->execute([$login, $password]);
}
if (!isset($err)) {
echo "Вы успешнозарегистрированы! Теперь выможете зайти на сайт. <a href="/">Главная страница</a>";
} else {
echo "Ошибка! Вы незарегистрированы.";
}

ну ка так
Saw, isset проверяет отсутствие переменной, $err = false переменная есть со значением ложь, просто делать if(!$err)
Онлайн: 6
Время:
Gen. 0.1202
(c) Bym.Guru 2010-2025