$ _SESSION не запускается

Когда пользователь вошел в систему, на экране ничего не отображается (функция отчетов об ошибках включена).
Это как $_SESSION неправда?

<?php

include_once('../includes/connection.php');if (isset($_SESSION['logged_in'])) {
?>
<html>
<head>
<title>wa</title>
<link rel="stylesheet" type="text/css" href="../assets/stylesheet.css">
</head>

<body>
<div class="container">
<a href="index.php" id="logo">CMS</a>

<br />
<ol>

<li><a href="add.php">Add Article</a></li>
<li><a href="delete.php">Delete Article</a></li>
<li><a href="logout.php">Logout</a></li>

</ol>
</div>
</body>

</html><?php

} else {

if (isset($_POST['username'], $_POST['password'])) {
$username = $_POST['username'];
$password = md5($_POST['password']);if (empty($username) or empty($password)) {
$error = 'All fields are required!';
}else {

$query = $pdo->prepare("SELECT * FROM users WHERE user_name = ? AND user_password =
?");

$query->bindValue(1, $username);
$query->bindValue(2, $password);

$query->execute();
$num = $query->rowCount();

if ($num == 1) {
$_SESSION['logged_in'] = true;

header('Location: index.php');
exit();

} else{

$error = 'Incorrect details!';
}
}}

?>
<html>
<head>
<title>Visuality dashboard</title>
<link rel="stylesheet" type="text/css" href="../assets/stylesheet.css">
</head>

<body>
<div class="container">
<a href="index.php" id="logo">CMS</a>

<br /><br />

<?php if (isset($error)) { ?>
<small style="color:#aa0000;"><?php echo $error; ?>
<br /><br />
<?php } ?>
<form action="index.php" method="post" autocomplete="off">
<input type="text" name="username" placeholder="något">
<input type="password" name="password" placeholder="något">
<input type="submit" value="Login" /></div>
</body>

<footer>
</footer>
</html>

<?php
}

?>

0

Решение

Вам нужно вызвать session_start (); в начале вашего файла PHP. Если у вас есть несколько файлов, то добавление этого файла в файл подключения будет работать для всех из них.

Подробнее о сессиях в PHP Вот

1

Другие решения

В строке 39 md5$_POST['password']); Вы пропустили «(«

md5($_POST['password']);
0

Каждый php-файл с переменной $ _SESSION должен включать session_start (); в верхней части страницы.

Когда страница загружается белым экраном после загрузки, вы должны увидеть php_error_log для возможных синтаксических ошибок (может отсутствовать «;»).
Пожалуйста, просмотрите ваш код.
Надеюсь, это поможет вам.

0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector