Пропадает форма PHP
После нажатия Зарегистрироваться пропадает форма, что не так?
<?php
$title = 'Регистрация';
include '/core/header.php';
if(isset($_REQUEST['ok'])){
$login = trim($_POST['login']);
$password = trim($_POST['password']);
$email = trim($_POST['email']);
if($core['activate'] == 'off'){
$check_login = assoc("SELECT * FROM users WHERE login = '$login'");
$check_email = assoc("SELECT * FROM users WHERE email = '$email'");
}else{
$check_login = assoc("SELECT * FROM activate WHERE login = '$login'");
$check_email = assoc("SELECT * FROM activate WHERE email = '$email'");
}
if(empty($login)){header('Location: /register.php');$_SESSION['messages'] = msg('1 из полей осталось пустым!','error');exit;}
if(empty($password)){header('Location: /register.php');$_SESSION['messages'] = msg('1 из полей осталось пустым!','error');exit;}
if(empty($email)){header('Location: /register.php');$_SESSION['messages'] = msg('1 из полей осталось пустым!','error');exit;}
if($check_login['login'] == $login){header('Location: /register.php');$_SESSION['messages'] = msg('Такой логин уже зарегистрирован!','error');exit;}
if($check_email['email'] == $email){header('Location: /register.php');$_SESSION['messages'] = msg('Такая почта уже зарегистрирована!','error');exit;}
if(!preg_match('|^[a-z0-9\-]+$|i', $login)){header('Location: /register.php');$_SESSION['messages'] = msg('Кириллица запрещена в логине!','error');exit;}
if(!preg_match('|^[a-z0-9\-]+$|i', $password)){header('Location: /register.php');$_SESSION['messages'] = msg('Кириллица запрещена в пароле!','error');exit;}
if(mb_strlen($login) > 32 or mb_strlen($login) < 3){header('Location: /register.php');$_SESSION['messages'] = msg('Логин должен состоять от 3 до 32 символов!','error');exit;}
if(mb_strlen($password) > 32 or mb_strlen($password) < 3){header('Location: /register.php');$_SESSION['messages'] = msg('Пароль должен состоять от 3 до 32 символов!','error');exit;}
if(mb_strlen($email) > 32 or mb_strlen($email) < 3){header('Location: /register.php');$_SESSION['messages'] = msg('Почта должна состоять от 3 до 32 символов!','error');exit;}
$password = md5($password);
$hash = md5(rand(100000,999999));
if($core['activate'] == 'off'){
query("INSERT INTO users (login, password, email) VALUES ('$login', '$password', '$email')");
setcookie('id', $login, time() + 86400 * 365);
setcookie('password', $password, time() + 86400 * 365);
header('Location: /');
$_SESSION['messages'] = msg('Вы успешно зарегистрировались!','success');
}else{
query("INSERT INTO activate (login, password, email, hash) VALUES ('$login', '$password', '$email', '$hash')");
mail($email, 'Активация аккаунта', 'Ссылка на активацию аккунта: http://'. $_SERVER['SERVER_NAME'] . '/activation.php?login='.$login.'&password='.$password.'&email='.$email.'&hash='.$hash);
header('Location: /');
$_SESSION['messages'] = msg('Вам на почту прийдет письмо с ссылкой на активацию аккаунта!','success');
}
exit;
}
echo '<div class="block" style="max-width:800px;margin:0 auto;">
Регистрация<hr>
<form action="" method="POST">
<table><tr>
<td width="20%">
Логин</td><td><input name="login" type="text"></td></tr>
<tr><td width="20%">
Пароль</td><td><input name="password" type="password"></td></tr>
<tr><td width="20%">
E-Mail</td><td><input name="email" type="email"></td>
</tr></table>
<button name="ok">Зарегистрироваться</button>
</form>
</div>';
include '/core/footer.php';
Ответы (1 шт):
Автор решения: Epic Gaming
→ Ссылка
exit("<meta http-equiv='refresh' content='0; url= /index.php'>");