Итак, чтобы описать мою проблему, я пытаюсь войти на мой сайт, создав сеанс с помощью session_start () et c, и в папке сеанса он всегда создает файлы, и даже когда я вхожу в систему. Но как только я нажимаю на кнопку входа в систему и она перенаправляет меня на мою индексную страницу, меня перенаправляют обратно, что означает, что переменные сеанса, которые я проверяю, больше не устанавливаются после перенаправления, и я понятия не имею, почему: / Использование Debian 8 и PHP 5.6.4 уже пробовал с более новыми версиями. Буду признателен за помощь:)
Вот фрагмент кода, никогда не было проблем на старом сервере с этим.
session_start();
$msg = "";
if (isset($_POST['submit'])) {
$username = $con->real_escape_string($_POST['username']);
$password = $con->real_escape_string($_POST['password']);
if ($username== "" || $password == "")
$msg = "Please check your inputs!";
else {
$sql = $con->query("SELECT id, password, isEmailConfirmed FROM users WHERE name='$username'");
if ($sql->num_rows > 0) {
$data = $sql->fetch_array();
if (password_verify($password, $data['password'])) {
if ($data['isEmailConfirmed'] == 0)
$msg = "Please verify your email!";
else {
$_SESSION["is_login"]=true;
$_SESSION["username"]=$username;
$msg = "You have been logged in";
header('Location: https://web.site/index.php');
exit();
}
} else
$msg = "Wrong username or password!";
} else {
$msg = "Wrong username or password!";
}
}
}
Индекс:
if(!session_id())
{
session_start();
}
if(!isset($_SESSION["username"]))
{
header("Location: login.php");
}