PHP/MySQL | Проблема с куками
Тема закрыта by
CreepMatis
Причина: Офф крч.
Причина: Офф крч.
Крч, снова появилась эта проблема. Не ставятся куки. Причем эта шняга только на хостах, на локалке(OpenServer) всё норм.
Код, где устанавливаются куки:
Проверка кукисов:
Есть варианты?
Код, где устанавливаются куки:
if(!$err){
setcookie("login",$login,time()+86400*30*12,'/');
setcookie("password",md5($password2),time()+86400*30*12,'/');
$sql = $db->prepare("INSERT INTO `users` (`login`,`password`,`email`,`reg_date`,`online`,`activatecode`) VALUES (?,?,?,?,?,?)");
$sql->execute([$login,md5($password2),$email,time(),time(),$hash]);
$subject = 'Подтверждение регистрации на сайте '.$_SERVER['SERVER_NAME'];
$message = '<html>
<head>
<link href="http://'.$_SERVER['SERVER_NAME'].'/Style/main.min.css" rel="stylesheet" type="text/css">
</head>
<body>
<div class="telo">
<div class="menu">Подтверждение регистрации</div>
<ul class="mmenu">
<li>Здравствуйте, '.$login.'!<br/>
Вы успешно зарегистрировались на нашем сайте. Но для доступа ко всем функциям сайта требуется подтвердить свою регистрацию!<br/>
Для этого перейдите по ссылке ниже:<br/>
<a href="http://'.$_SERVER['SERVER_NAME'].'/activate/'.$db->lastInsertId().'/'.$hash.'">http://'.$_SERVER['SERVER_NAME'].'/activate/'.$db->lastInsertId().'/'.$hash.'</a><br/>
Если регистрацию проводили не вы - проигнорируйте это письмо!<br/>
С уважением, команда сайта '.$_SERVER['SERVER_NAME'].'</li></ul>
</div></body></html>';
$headers = "Content-type: text/html; charset=utf-8 \r\n";
$headers .= "From: От кого письмо <no-reply@".$_SERVER['SERVER_NAME'].">\r\n";
$headers .= "Reply-To: no-reply@".$_SERVER['SERVER_NAME']."\r\n";
mail($email,$subject,$message,$headers);
$_SESSION['message'] = 'Регистрация успешна!';
header("Location: /");
exit;
}{
Проверка кукисов:
If (!empty($_COOKIE['login']) && !empty($_COOKIE['password'])) {
$login = $_COOKIE['login']; // Тут ясное дело для зашиты если будете расшифровать и шифровать
$password = $_COOKIE['password']; // Также
$user = $db->prepare('SELECT * FROM `users` WHERE `password` = ? AND `login` = ? LIMIT 1');
$user->execute(array($password, $login));
unset($login, $password); // Освобождаем
if (!$user = $user->fetch()) {
unset($_COOKIE['login']);
unset($_COOKIE['password']);
session_destroy();
}
}
Есть варианты?
CreepMatis, снова помочь?
Мб убери последний параметр?
Kaito (27.09.2015 в 21:59)
Мб убери последний параметр?
Мб убери последний параметр?
Какой?
CreepMatis (27.09.2015 в 22:02)
Kaito (27.09.2015 в 21:59)
Мб убери последний параметр?
Какой?
Kaito (27.09.2015 в 21:59)
Мб убери последний параметр?
Какой?
'/'
Впервые вижу нечто
Kaito, 4-ый параметр у setcookie. Странно. На локалке всё отлично, а на хосте -