Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Почему введенные данные не вносятся в базу данных?

Диман Григорьев Ученик (64), на голосовании 4 года назад
Почему введенные данные не вносятся в базу данных?
Дополнен 4 года назад
<?php
require_once 'db.php';
session_start();
?>






Регистрация пользователей PHP MySQL с активацией письмом
<form action="<?= $_SERVER['SCRIPT_NAME'] ?>" method="post">
Логин: *
EMail: *
Пароль: *
Повторите пароль: *



Поля со значком * обязательны для заполнения



<?php
if (isset($_POST['doGo'])) {

// Все последующие проверки, проверяют форму и выводят ошибку
// Проверка на совпадение паролей
if ($_POST['pass'] !== $_POST['pass_rep']) {
$error = "Пароль не совпадает";
Дополнен 4 года назад
}
//else{ // Если ошибок нет, то происходит регистрация
$login = $_POST['login'];
$email = $_POST['email'];
$confirmed = 1;
// Пароль хешируется
$pass = password_hash($_POST['pass'], PASSWORD_DEFAULT);
// хешируем хеш, который состоит из логина и времени
$hash = md5($login . time());

// Переменная $headers нужна для Email заголовка
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$headers .= "To: <$email>\r\n";
$headers .= "From: \r\n";
// Сообщение для Email
$message = '





Что бы подтвердить Email, перейдите по ссылке


';

// Добавление пользователя в БД
$bd->query("INSERT INTO `users` (`login`, `email`, `password`, `hash`, `email_confirmed`) VALUES('$login', '$email', '$pass', '$hash ', '$confirmed')");

}

// проверяет отправилась ли почта
if (mail($email, "Подтвердите Email на сайте", $message, $headers)) {
// Если да, то выводит сообщение
echo 'Подтвердите на почте';
}else{
// Если ошибка есть, то выводить её
echo '$error';
}
//}

?>
Голосование за лучший ответ
Похожие вопросы