Код ниже. У меня была эта проблема с самой последней версией firefox. Я проверил другие форумы и не нашел никакого решения. Кажется, я что-то делаю неправильно? Как вы, наверное, можете сказать, я немного новичок в php.Проблемы с распознаванием куки
Кроме того, я знаю, что мой подход немного неортодоксален для многих других вещей в этом коде. Тем не менее, проблема, которую я пытаюсь решить, - это test-test if, где он проверяет, установлен ли $ _COOKIE ['auth']. Я проверил свои файлы cookie, и он установлен. Я тестировал некоторые высказывания die(), и он не подбирается. Любая помощь?
<?php
//THIS IS WHERE THE PROBLEM EVIDENTLY OCCURS
if (isset($_COOKIE['auth'])){
if ($_SESSION['auth'] > 0){
header ("Location: /members/index.php");
} else {
setcookie ('auth', '', time() - 3600, "/", "www.domain-here.com");
}
} else {
$old_url = $_SERVER['HTTP_REFERER'];
$username = "";
$password = "";
if ($_POST['username'] != "" && $_POST['password'] != ""){
$username = $_POST['username'];
$password = $_POST['password'];
$expire = 0;
if ($_POST['save'] == "checked"){
$expire = time()+60*60*24*14;
}
//$result = db query to check if user exists
if ($result) {
if (mysql_num_rows($result) > 0){
session_start();
setcookie("auth", $sid, $expire, "/", "www.domain-here.com"); //here I am setting the cookie to allow users to stay logged on
header ("Location: $old_url");
} else {
session_start();
$_SESSION['auth'] = "0";
die(alert("Invalid username or password.", "login.php"));
}
} else {
die(alert("Invalid username or password.", "login.php"));
}
}
}
?>
Удалите весь код, не имеющий отношения к проблеме, и попробуйте снова спросить. Сессия и база данных не имеют смысла в вопросах, связанных с кукисом. – zerkms
^^ Он был отредактирован. Я вытащил большую часть несвязанного материала session/db. – user1115853
Что вы на самом деле пытаетесь сделать здесь? Похоже, что вы просто выполняете обработку сеанса, и в этом случае я не понимаю, почему вам нужно хранить файл 'auth'. – declan