Алгоритм аутентификации средствами PHP?!

  • Автор темы Автор темы zEitEr
  • Дата начала Дата начала

zEitEr

Новичок
Алгоритм аутентификации средствами PHP?!

Подскажите, пожалуйста, алгоритм аутентификации средствами PHP (без средств MySQL).
Типа того, что используется на данном форуме.
 
Шаг 1) Спрашиваешь у человека логин/пароль
Шаг 2) Проверяешь на корректность
Шаг 3) Выполняешь некоторые действия в зависимости от результатов второго шага.

Какой из этих трех шагов тебе не понятен?
 
Типа на этом фoруме MySQL то и используется.

вот самый простой:

PHP:
$l="login";
$p="pass";

if($_REQUEST["login"]==$l && $_REQUEST["password"]==$pass)
{
  print "OK!";
}
else
{
  print "Go away!";
}
 
Хм... может, я что-то не так написал...
На самом деле меня интересует следующее:

Как и где храниться информация, читая которую скрипт знает пользователя и предоставляет ему права осуществлять определенные действия (администратор или рядовой пользователь)!

Если куки? Тогда как их уничтожить если пользователь закрыл окно или нажал кнопку "ВЫХОД".

1) Вход - это понятно!
2) Ауторизованные действия в рамках аккаунта - ??? Вопросы...
3) Выход - тоже вопросы...
 
Как и где храниться информация,
зависит от способа авторизации.
Если куки? Тогда как их уничтожить если пользователь закрыл окно
никак. сама уничтожится, если ты выставил время жизни куки 0.
или нажал кнопку "ВЫХОД".
стандартно, так, как всегда удаляются куки. читай документацию

Но куками - это очень дыряво. подделать куку - нефиг делать.
 
1) Переходя со страницы на страницу, сервер должен помнить данные пользователя (для этого используется сессия, как я понял) и предоставлять ему права в соответсвии с его уровнем доступа... я пробовал... не получилось!
Мне ьы что-нибудь по подробнее про сессии, а то того материала FAQ: http://faq.phpclub.net/sessions не достаточно! Не понял. Как правильно регистрировать переменные сессии, что бы они были затем доступны на всех страницах сайта.

2) Выход! При попытке закрыть сессию (если паметь на подводит) session_destroy - выдавалась ошибка, что мол сессия не существует! Хотя была инициализирована session_start... (не помню точно).

Блин мне бы что-нить почитать по этому поводу...
 
там 5 ссылок по сессиям.
Тебе мало?

там пример есть, с каунтером. какой еще тебе нужен, чтобы научиться помещать данные в сессию?

Хотя была инициализирована session_start... (не помню точно).
это вообще песня
 
Ну, вот я понял. что на самом деле мне нужно было...
1) Ввод имени и пароля...
2) Праверка на правильность...
3) запись идентификатора сессии в базе MySQL и метки (кода), что авторизирован...

При переходе на другую страницу...
4) проверка на соотвествие с пунктом 3... и прав доступа
если нет тогда переадресация на п.1.

Все верно?
 
а что этот тред делает в форуме "для продвинутых"?

типа кто "не продвинутый", тот хрен поймет, чего хочет автор тoпика? :D
 
и что в сессию просто написать...
зерегистрировать переменную ?! и потом проверять ее на других страницах?
 
да... вроде доперло...
Все данные о пользователе и его права доступа хрянятся в базе... и в момент авторизации передаются соотвествующим переменным, которые регистрируются в сессии... в соотвествии с чем, определяются возможные действия юзера...
 
Сверху