PHP-сессия, похоже, не работает

Переменные сеанса, видимо, не работают для меня. Я не знаю, что я делаю неправильно. Это код, который я использую для проверки действительного пароля:

if ($input_password_hash == $password_hash) { session_start(); $_SESSION['is_user'] = 1; header("Location: ../new_look"); //or Location: index.php } else echo "Wrong password."; 

в файле index.php (где он перенаправляется), у меня есть этот код:

 if ($_SESSION['is_user'] == 1) { //show index page with navigation bar for registered user } else { //do something else } 

но он не работает вообще.

Сеанс, очевидно, начинается, и это можно проверить, проверив файл cookie.

Что я делаю не так?

Вы знаете, что вам нужно написать session_start() прежде чем использовать переменную $_SESSION в любом запросе, не так ли? Похоже, вы не поместили его в index.php нигде.

Session_start (); должен быть помещен перед любым заголовком, который будет отправлен, например, перед любым тегом HTML в php-файле.

Я только что вернулся с исправления, что … добавил session_start() прямо в верхней части файла – даже перед <html> . Выполнение session_start() в середине дает ошибки … не знаю почему. Я новичок в этом. Спасибо за ваш быстрый ответ.