#php #cookies
#php #файлы cookie
Вопрос:
Я пытаюсь определить, имеет ли файл cookie с именем «аутентифицированный» значение «true», если это перенаправление.
Вот что у меня есть до сих пор:
$named_cookie= "authenticated";
if($_COOKIE[$named_cookie] === "true"){
flush();
header( 'Location: https://app.website.com' );
exit (); }
По какой-то причине это работает в Chrome, но не в FF или IE
Комментарии:
1. В Firefox он показывает ошибку или что-то в этом роде? Или просто ничего не делайте …. не могли бы вы прокомментировать
header
строку и поместить этуvar_dump($_COOKIE[$named_cookie]);
, протестировать ее в Firefox и опубликовать результат?2. Выполнено. В Chrome написано ‘string (4) «true»‘, но в FF ничего не происходит.
3. попробуйте очистить кеш и файлы cookie, затем повторите попытку, но я не думаю, что причина в этом
4. Хорошо, я думаю, что я понял …. Если вы устанавливаете cookie с помощью setcookie, можете ли вы опубликовать код, в котором вы устанавливаете cookie?
5. @Hackerman
'string(4) "true"'
неbool
это означает, что он sat и имеет значение"true"
не boolTRUE
, если вы думаете об этом
Ответ №1:
Попробуйте:
<?php
$named_cookie= "authenticated";
if(isset($_COOKIE[$named_cookie]) amp;amp; $_COOKIE[$named_cookie] == "true"){
header('Location: https://app.website.com');
exit(); }
?>
😉
Комментарии:
1. я не понимаю, что вам нужно
flush()
Ответ №2:
Я понял это. Я размещаю свой сайт на WPEngine, и они не разрешают доступ к файлам cookie с помощью PHP, все это должно быть сделано не через AJAX и JS.