Forum Webscript.Ru

Программирование => PHP => Тема начата: Алексей от 09 Сентября 2004, 12:50:49

Название: Что делать после того, как пользователь прошёл авторизацию?
Отправлено: Алексей от 09 Сентября 2004, 12:50:49
Вообщем, разрабатываю сцайт. С регистрацией пользователей.
Есть идея прошедшим регистрацию кидать куку-хеш md5 от связки логин_юзера:пароль_юзера и id юзера.

При каждом(!) запросе (и POST, и GET) к программе проверять наличие этих кук, и вытаскивать из БД подтверждение, что такой юзер является зарегестрированным.

Т.е.:


$id = db_query("SELECT что-то FROM чего-то WHERE user_id=\'$_COOKIE[user_id]\' AND MD5(CONCAT(user_login,user_password)) = \'$_COOKIE[hash]\'");
if(mysql_num_rows($id)!=1) die(\'Вероятно Вы начинающий кулхацкр?\')";
 

Что меня беспокоит - так этопостоянное терзание базы.
Стоит так делать или нет?
Название: Что делать после того, как пользователь прошёл авторизацию?
Отправлено: Меняздесьдавнонет от 09 Сентября 2004, 12:59:59
посмотри - при генерации этой страницы был сделан 21 запрос. при этом особых жалоб от базы не слышно.
Ты уверен, на этом фоне, что один простенький запрос попадает под определение "терзание базы"?
Название: Что делать после того, как пользователь прошёл авторизацию?
Отправлено: Алексей от 09 Сентября 2004, 13:12:57
RomikChef
не, не уверен :)
т.е. это правильный метод?
а ещё какие-нибудь похожие методы существуют?
Название: Что делать после того, как пользователь прошёл авторизацию?
Отправлено: Меняздесьдавнонет от 09 Сентября 2004, 13:17:06
насчет правильности метода ты не спрашивал.
Ты сказал, что тебя интересует терзание базы.

Нормальный метод. Не сильно хуже других.

Обычно авторизацию делают на сессиях. про них можно почитать в PHP FAQ: Сессии. Подробное описание работы и объяснение механизма. (http://phpfaq.ru/sessions)
Название: Что делать после того, как пользователь прошёл авторизацию?
Отправлено: Алексей от 09 Сентября 2004, 13:33:42
Спасибо. :)