Почему не создаётся сессия на реальном сервере (reg.ru)?
Собственно вопрос в заголовке, вот код:
function loginIn($p1, $p2){
global $mysqli;//переменная общего подключения к бд
$sql = "SELECT * FROM users WHERE login = '$p1' OR pass = '$p2'";
$result = mysqli_query($mysqli, $sql);
$post = mysqli_fetch_assoc($result);
return $post;
}
$loginIn = loginIn($_POST['loginUser'], $_POST['passUser']);
if (isset($_POST['authUser']) and password_verify($_POST['passUser'], $loginIn['pass'])) {
if($_POST['loginUser'] === ''){
$errorsAuthUsers = "Вы не ввели логин";
}
if($_POST['passUser'] == ''){
$errorsAuthUsers = "Вы не ввели пароль";
}
if($loginIn['login'] != $_POST['loginUser']){
$errorsAuthUsers = "Неверный логин или пароль";
}
if (isset($_POST['authUser']) and !$errorsAuthUsers) {
$_SESSION['USER_NAME'] = $loginIn['name'];
$_SESSION['USER_LOGIN'] = 1;
exit(header("Location: ".$_SERVER['REQUEST_URI']));
}
}
На локальном сервере OPEN SERVER всё работает идеально, session_start() в начале файла, в $errorsAuthUsers пусто.
Ответы (2 шт):
Автор решения: Alex Khonko
→ Ссылка
Скорее всего, у вас что-то не так с директорией(указана не туда, или прав не хватает, чтобы писать, ...)
Посмотрите в https://stackoverflow.com/questions/19692157/session-variables-not-working-php
Автор решения: ARTISUC
→ Ссылка
Решение пришло из файла .htaccess, в котором удалил строчку Header always edit Set-Cookie ^(.*)$ "$1; HttpOnly; Secure; SameSite=lax" и всё заработало.