PHP обнаруживает значение cookie и перенаправляет

#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" не bool TRUE , если вы думаете об этом

Ответ №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.