PHP if(cookie установлен

Итак, у меня проблемы с довольно простым PHP, так как я не очень разбираюсь в нем. Итак, вот код:

 <?php 
if(!isset ($_COOKIE['cookie'])) {
 header("Location: index.html");
} else {
 header("Location: index2.php");
 ?>

Он находится в верхней части HTML-документа, раньше любого другого HTML-кода, потому что, как я слышал, заголовок не будет работать иначе (это утверждение само по себе может доказать мое незнание). Но в основном у меня есть страница соглашения, с которой вы должны согласиться, прежде чем переходить на сайт, но она не считается моим индексным файлом. Поэтому мне нужно это перенаправление, чтобы определить, существует ли файл cookie, установленный соглашением. Php, или нет, и я предполагаю, что этот синтаксис правильный, но, похоже, он не работает. Я использовал эхо

Есть идеи как починить? Заранее спасибо.

3 ответа

Попробуйте использовать этот код:

index.php должен быть таким (начало файла до конца)

<?php

if (!isset($_COOKIE['cookie']))
{
    header('Location: http://www.mysite.com/index2.php');
    exit;
}

?>
<DOCTYPE html>
...rest of your HTML code

Вам также не хватает закрывающей фигурной скобки на вашем теле

<?php 
if(!isset ($_COOKIE['cookie']))
 {
 header("Location: index.html");
} 
else 
{
 header("Location: index2.php");
}
 ?>

Я бы предпочел использовать что-то подобное

 <?php

 echo $htmlHeader;

 while($stuff){

 echo $stuff;

  }

 echo "<script>window.location = 'url'</script>";
  ?>

Это хорошо работает для меня

Другие вопросы по тегам