После авторизации перенаправляет на index.php
Если данная сессия существует то должно вывести логин, емаил и ссылку на выход. Ссылка на выход появляется а логин и емаил нет.
<?php session_start();?>
<!DOCTYPE html>
<html>
<head>
<title>SignIn</title>
</head>
<body>
<? if(isset($_SESSION['check_user'])): ?>
<h2 style="margin: 10px 0;"><?= $_SESSION['check_user']['login'] ?></h2>
<a href="#"><?= $_SESSION['check_user']['email'] ?></a>
<a href="logout">LogOut</a>
<? else: ?>
<form action="log" method="POST">
<input type="text" name="login" id="login" placeholder="Past Your Login">
<input type="password" name="password" id="password" placeholder="Past Your Password">
<button type="submit">SignIn</button>
</form>
<? endif; ?>
</body>
</html>
Через <?= print_r($login); ?> получаю 1 а через <?= print_r('login'); ?> получаю login1
Вот обработка авторизации
<?php
session_start();
require "database.php";
$database = new Database();
$db = $database->getConnection();
//Получаем данные из полей
$login = $_POST['login'];
$password = $_POST['password'];
//Проверяем существует ли аккаунт или нет если нет то выдаем ошибку\
$check_reg = $db->query("SELECT * FROM `users` WHERE `login` = '$login'")->fetch(PDO::FETCH_ASSOC);
if(!empty($check_reg) < 0) {
echo "Данный аккаунт не зарегестрирован!";
exit();
}
//Сравниваем ХЭШ пароля в базе
$password = md5($password."9urnhg83nrh8g23");
//Берем данные из базы users
$check_user = $db->query("SELECT * FROM `users` WHERE `login` = '$login' AND `password` = 'password'")->fetch(PDO::FETCH_ASSOC);
//Создаем ссесию пользователя
$_SESSION['check_user'] = [
"id" => $check_user['id'],
"login" => $check_user['login'],
"email" => $check_user['email'],
"balance" => $check_user['balance']
];
//Редирект на главную страницу
header('Location: index');
exit();