Отменить cookies php
У меня есть этот код, который настроен при проверке входа в систему:
if((isset($_POST["remember_me"]))&&($_POST["remember_me"]==1))
{
setcookie('email', $username, time()+3600);
setcookie('pass', $pass, time()+3600);
}
Теперь, когда я нажимаю ссылку на выход (logout.php)
Я сделал это:
<?php session_start();
setcookie("email", '', 1, "");
setcookie("pass", '', 1, "");
$_SESSION["login"] = "";
header("location: aforum/enter_furom.php");
?>
Я не использовал сеанс destroy, потому что я не хочу уничтожать все сеансы....
теперь уничтожение сеанса отлично работает... но когда я пытаюсь отключить куки, браузеры (все браузеры: проводник, хром, firefox, mozilla) дают мне ошибку, говоря, что новые cookie не могут быть установлены... любая помощь отключить вышеуказанные файлы cookie?
Ответы
Ответ 1
используйте суперглобальную переменную _COOKIE
:
unset($_COOKIE['mycookiename']);
или вызовите setcookie()
с только имя файла cookie
setcookie('mycookiename');
В reset ваши файлы cookie при выходе из системы:
setcookie('pass');
setcookie('email');
Для входа в систему:
if(
isset($_POST["remember_me"]) &&
$_POST["remember_me"]==1 &&
$_COOKIE['pass'] != NULL &&
$_COOKIE['email'] != NULL &&
)
Ответ 2
setcookie('cookiename', '', time()-3600);
Ответ 3
Проверьте в своем браузере каталог, в котором работает файл cookie. И отключите его, указав путь, который имеет файл cookie. Как в примере, если каталог cookie /aforum/
setcookie ("email","",time()-1,"/aforum/","http:// yourdomain.com");
Ответ 4
Чтобы отключить файлы cookie в PHP, просто установите время их истечения в прошлое. Например:
$expire = time() - 300;
setcookie("email", '', $expire);
setcookie("pass", '', $expire);
Ответ 5
В Chrome и IE8 +, по крайней мере, следующее приведет к удалению cookie из браузера. Он не будет отображаться в массиве $_COOKIE
до тех пор, пока страница не будет перезагружена.
setcookie('cookiename','',0,'/',$cookieDomain)
вы можете оставить здесь несколько параметров, но важно то, что вы устанавливаете пустую строку и удаляет файл cookie из браузера.
Ответ 6
Вам нужно установить время истечения срока действия в прошлом, например
setcookie('email', '', time()-3600);
Также вы должны использовать Absolute URI
для своего header('Location:' ....)
.
Ответ 7
попробуйте это
setcookie ("email", "", time() - 3600);
setcookie ("pass", "", time() - 3600);