


Куки не разрушаются после прошедшего установленного времени,почему?
есть скрипт авторизации и страница пользователя,вот они:
<form action="" method="POST">
<input name="username">
<input name="password" type="password">
<input type="submit">
</form>
<?php
session_start();
$host = 'localhost'; // Хост, у нас все локально
$user = 'root'; // Имя созданного вами пользователя
$pass = ''; // Установленный вами пароль пользователю
$db_name = 'my'; // Имя базы данных
$db = mysqli_connect($host, $user, $pass, $db_name);
if (!empty($_POST['password']) and !empty($_POST['username'])) {
$login = $_POST['username'];
$password = $_POST['password'];
$query = "SELECT * FROM users WHERE username='$login' AND password='$password'";
$res = mysqli_query($db, $query);
$user = mysqli_fetch_assoc($res);
if (!empty($user)) {
$_SESSION['auth'] = true;
if(setcookie('user_id', time()+10))
echo "Кука установлен";
else
echo "Кука не установлен";
echo "User god";
echo "<a href='users.php'>User</a>";
} else {
session_start();
$_SESSION['auth'] = null;
echo "no god";
// неверно ввел логин или пароль
}
}
mysqli_close($db); // закрываем соединение с БД
?>
стр. "users.php"
<?php session_start(); ?>
<?php if (!empty($_SESSION['auth'])):
?>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<p>текст только для авторизованного пользователя</p>
</body>
</html>
<?php else: ?>
<p>пожалуйста, авторизуйтесь</p>
<?php endif; ?>
кто подскажет почему по прошествии действия куки (и даже после закрытия страницы пользователя и выхода из браузера) все равно куки остаются ,почему не разрушаются?Что не так?Закрываю браузер,открываю ,а он авторизирован,куки не уничтоженны,как так?
setcookie('user_id', time()+10)
Здесь не указано время жизни, вернее, указано не в том месте. Попробуйте вот так:
setcookie('user_id', 'любой текст', time()+10)
время жизни куки не работает в том случае если его задали не правильно не в том формате и особенно если передали не тем параметром