Forum Webscript.Ru
Программирование => PHP => Тема начата: Алексей от 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(\'Вероятно Вы начинающий кулхацкр?\')";
Что меня беспокоит - так этопостоянное терзание базы.
Стоит так делать или нет?
-
посмотри - при генерации этой страницы был сделан 21 запрос. при этом особых жалоб от базы не слышно.
Ты уверен, на этом фоне, что один простенький запрос попадает под определение "терзание базы"?
-
RomikChef
не, не уверен :)
т.е. это правильный метод?
а ещё какие-нибудь похожие методы существуют?
-
насчет правильности метода ты не спрашивал.
Ты сказал, что тебя интересует терзание базы.
Нормальный метод. Не сильно хуже других.
Обычно авторизацию делают на сессиях. про них можно почитать в PHP FAQ: Сессии. Подробное описание работы и объяснение механизма. (http://phpfaq.ru/sessions)
-
Спасибо. :)