Здравствуйте. У меня возникла ошибка. Я работаю с сессиями и хочу сделать, так, чтобы когда человек авторизовался его логин и пароль не пропадали с поля "логин" и "пароль". Но у меня возникает ошибка - сессии login и pass undefined.
Но если авторизоваться то все это будет выводится в поле. Но все же эта ошибка режет глаз. Хотел исправить это дело с помощью:
<?php
if($_SESSION['login'] == '' || $_SESSION['pass']):
?>
<?php
else:
?>
<?php
endif;
?>
Все вроде должно работать. Но выводит ошибку
Undefined array key "login" in C:\OpenServer\domains\filephp\reg.php on line 15.
Вот код:
<b>reg.php:</b>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="css/style.css">
<title>Document</title>
</head>
<body>
<?php
require_once 'header.html';
session_start();
?>
<?php
if($_SESSION['login'] == '' || $_SESSION['pass'] == ''):
?>
<div class="col">
<div class="row">
<h1>Регистрация</h1>
<form method = "post" action = "check_reg.php">
<input type = "text" name = "login" placeholder = "Ваш логин">
<input type = "password" name = "pass" placeholder = "Ваш пароль">
<input type = "submit" value = "Зарегистрироваться">
</form>
</div>
<div class="row" style = "float: right; margin-top: -212px">
<h1>Авторизация</h1>
<form method = "post" action = "login.php">
<input type = "text" name = "login" placeholder = "Ваш логин" value = >
<input type = "password" name = "pass" placeholder = "Ваш пароль">
<input type = "submit" value = "Войти">
</form>
</div>
</div>
<?php
else:
?>
<div class="col">
<div class="row">
<h1>Регистрация</h1>
<form method = "post" action = "check_reg.php">
<input type = "text" name = "login" placeholder = "Ваш логин">
<input type = "password" name = "pass" placeholder = "Ваш пароль">
<input type = "submit" value = "Зарегистрироваться">
</form>
</div>
<div class="row" style = "float: right; margin-top: -212px">
<h1>Авторизация</h1>
<form method = "post" action = "login.php">
<input type = "text" name = "login" placeholder = "Ваш логин" value = "<?=?>">
<input type = "password" name = "pass" placeholder = "Ваш пароль">
<input type = "submit" value = "Войти">
</form>
</div>
</div>
<?php endif;?>
<?php
require_once 'footer.html';
?>
</body>
</html>
<b>check_reg.php:</b>
<?php
session_start();
$login = htmlspecialchars(trim($_POST['login']));
$pass = htmlspecialchars(trim($_POST['pass']));
if(strlen($login) < 6)
echo 'Логин не менее 6 символов';
else if(strlen($pass) < 8)
echo 'Пароль не менее 8 символов';
$mysql = new mysqli('localhost', 'root', '', 'register');
$mysql -> query("INSERT INTO `users` (`login`, `pass`) VALUES('$login', '$pass')");
$_SESSION['login'] = $user['login'];
$_SESSION['pass'] = $user['pass'];
$mysql -> close();
header('Location: reg.php');
exit();
?>