Я хочу перенаправить на страницу всплеска для посетителей, впервые посетивших сайт, с помощью файлов cookie, чтобы помнить, что они пришли. Это легко, однако, для людей с отключенными cookie, я никогда не хочу перенаправлять их на страницу всплеска.Проверяйте файлы cookie с PHP (не JS), чтобы использовать для переадресации страницы заставки
Проблема, с которой я столкнулся, заключается в том, что когда я устанавливаю файл cookie, PHP не увидит его, пока я не перезагружу страницу. Это означает, что посетители в первый раз не перенаправляются, если они не посещают домашнюю страницу дважды или не перезагружают страницу.
Вот что у меня есть, что работает, но требует перезагрузки:
setcookie("test",'1',time() + 3600,'/');
if(isset($_COOKIE['test'])){
if(isset($_COOKIE['bfc_splash'])){}else{
header("Location: splash/");
}
}
Я попытался это, но мне кажется, SESSION информация хранится в куки, потому что он просто бесконечно перенаправляет:
if(isset($_COOKIE['test'])){
if(isset($_COOKIE['bfc_splash'])){}else{
header("Location: splash/");
}
}elseif(!isset($_COOKIE['test']) && !isset($_SESSION['cookies'])){
setcookie("test",'1',time() + 3600,'/');
$_SESSION['cookies'] = '1';
header("Location: index.php");
}
Я бы предпочел не использовать javascript для проверки файлов cookie, так как кто-то, кто отключает файлы cookie, скорее всего, также отключит javascript. Любое понимание или ссылки на решения будут высоко оценены. Я пока не нашел много.
Да, вот почему я * никогда * перенаправить кого-то с печеньем отключенного на страницу выплеска. – Karl
Вы не сможете проверить, есть ли файлы cookie отключены или впервые посещают сайт. –