Я пытаюсь отключить файлы cookie, которые я ранее задавал как:
setcookie(session_name(),$sessionID,time() + 30*24*3600,'/');
setcookie('UserID',$result[0]['UserID'],time() + 30*24*3600,'/');
setcookie('UType',$result[0]['UType'],time() + 30*24*3600,'/');
setcookie('Username',$Username,time() + 30*24*3600,'/');
Файл выхода:
function unsetCookie() {
foreach($_COOKIE as $key => $value) {
// $_COOKIE[$key] contains the cookie name as expected
setcookie($_COOKIE[$key],'',time()-(40*24*3600),'/');
}
}
unsetCookie();
session_start();
session_destroy();
header('Location: '.$loginPage);
exit();
Но после перенаправления в файле выхода cookies
все еще не удаляются. Что может быть причиной этого?
$_COOKIE[$key]
содержит значение вашего файла cookie, а не ключа, поскольку это $key
.
Таким образом, вам понадобится:
setcookie($key,'',time()-(40*24*3600),'/');
Установите значение "" и дату истечения срока действия до вчерашнего дня (или любую дату в прошлом)
Попробуйте этот код:
setcookie("UserID", "", time()-(40*24*3600));
setcookie("UType", "", time()-(40*24*3600));
setcookie("Username", "", time()-(40*24*3600));