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>";
?>
Это хорошо работает для меня