2012-05-16 4 views
1

У меня есть система входа/выхода PHP. Код для выхода из системы выглядит следующим образом:PHP Безопасный вход в систему/Выход из системы: Выход из системы Проблема

if($_POST['submit']=='logOut') 
{ 
    setcookie('userName','', time()-60*60*24*100); 
    setcookie('login','', time()-60*60*24*100); 
    header("Location: index.php"); 
    exit; 
} 

Пользователи проверяются на статус авторизации через следующие:

<?php 
if(!$_COOKIE['login']): 
// If you are not logged in 
?> 

Насколько я могу судить, это должно войти пользователю выход, но это похоже, не делает этого. Сайт можно посмотреть на сайте novabvuild.comlu.com, и информация по умолчанию для входа в систему может быть использована (admin, admin). Таким образом, вы можете увидеть эту проблему. Вход работает нормально, но выход из системы не работает должным образом.

Заранее благодарен!

+0

Поскольку существует множество способов сделать систему аутентификации, я рекомендую вам объяснить и, возможно, добавить здесь код для входа в систему. Я сомневаюсь, что кто-то может помочь вам без этих подробностей. –

+0

Выход из системы может быть в порядке, но это зависит от того, как вы проверяете, является ли пользователь логином ... если вы делаете это явно с помощью куки-файлов, как кажется из кода выхода, этого должно быть достаточно. Как насчет сеансов? Покажите нам, как вы проверяете, вошел ли пользователь. – ShinTakezou

+0

@ user1397727 Я вижу, что вы редактировали, так как ответы вошли. Вы пытались? сделал какую-то работу? – MikeCruz13

ответ

0

Попробуйте добавить путь:

setcookie("userName", "", mktime(12,0,0,1, 1, 1970), "/"); 

Вы также можете уйти с: unset($_COOKIE['cookieName']);

0

Try:

unset($_COOKIE[login]) and unset($_COOKIE[userName]) 

ИЛИ

setcookie("login") and setcookie("userName") 
0

используемой сессии вместо печенья , установить сеанс, когда пользователь Войти и отключения/уничтожить сеанс, когда выход пользователя

if($_POST['submit']=='logOut') 
{ 
    unset($_SESSION['userName']); 
    unset($_SESSION['login']); 
    header("Location: index.php"); 
    exit; 
} 
else if($_POST['submit']=='login') 
{ 
    $_SESSION['userName']=$userName; 
    $_SESSION['login']=$login; 
} 

надеюсь, что это поможет.

Смежные вопросы