У меня изначально был этот код (без плашки), но он позволял просматривать страницу.
Я попытался добавить функцию die, но она просто показывает пустую страницу.
<?php require('dbcon.php');?>
<?php session_start();
if (!isset($_SESSION['adminauth']))
{
header('login.php');
die();
};
?>
@ Rizier123 верно, но один комментарий — HTTP / 1.1 требует абсолютного URI в качестве аргумента для »Location: включая схему, имя хоста и абсолютный путь, но некоторые клиенты принимают относительные URI.
<?php require('dbcon.php');?>
<?php
/* Redirect to a different page in the current directory that was requested */
if (!isset($_SESSION['adminauth'])) {
$host = $_SERVER['HTTP_HOST'];
$uri = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
$extra = 'login.php';
header("Location: http://$host$uri/$extra");
die();
}
?>
Включить вывод ошибок с помощью error_reporting(E_ALL)
а также ini_set('display_errors', 'on');
тогда вы видите все ваши ошибки. Есть несколько вещей. Вы должны начать сеанс в верхней части скрипта, и ваш заголовок не верен.
header('Location: login.php');
В противном случае у вас есть ошибка.
см. заголовок PHP DOCS:
<?php
header('Location: http://www.example.com/');
exit;
?>