Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Авторизация пользователя
 
 автор: Felix   (13.01.2005 в 08:58)   письмо автору
 
 

Как сделать авторизацию пользователя на сайте с приминением mysql (логины и пароли должны находиться в mysql) , чтобы в зависимости от того какой пользователь авторизовался открывалась страница с разными списками меню (т.е. для разных пользователей должно открыться меню с разным содержимым).

   
 
 автор: localGhost   (13.01.2005 в 09:04)   письмо автору
 
   для: Felix   (13.01.2005 в 08:58)
 

Думаю для этогов базе данных надо по мио имени пользователя и пароля хранить еще "уровень доступа" для каждого пользователя. А далее продумать как зная уровнь доступа авторизовавшегося пользователя отсечь его или же пустить в определенные места.

Я кстати сейчас именно этим занимаюсь.... Файл авторизации уже написал.... щас вот пытаюсь разработать систему контролирующую код доступа посетителя. Замутил правда через чур....... а так вроде нормально..

   
 
 автор: localGhost   (13.01.2005 в 10:27)   письмо автору
 
   для: localGhost   (13.01.2005 в 09:04)
 

Щас юолее детально опишу мою идею, а вы мне скажите стоит так делать или нет.

Вобщем начу с того, что пользователей мы разделем по правам используя условнуй код, число от 100 до 1000 с шагом 100. (100, 200, 300, ...., 1000). 100 - самый низкий уровень доступа, 1000 - самый высокий уровень доступа. для каждого посетителя код доступа будет записан в базе данных рядом с именем и паролем.

В моем случае, чтобы добавить новый раздел в меню достаточно просто добавить файл (так сказать модуль) в определенную директорию.

так вот, чтобы ограничить доступ к разделу, я в самом начале, а точнее во второй строчке файла (первая будет <?) сообщаю о том кого пускать в данный раздел, т.е. пользователей с кодом доступа не ниже какого значения. Выглядит это примерно так:

<?
// ----- [500]
//

?>

Обратите внимание: это должен обязательно коментарий. О том что мы сообщаем о правах доступа на эту страницу говорит специальная строка // -----, если она будет отсутсвовать то код просто проигнорирует эту строчку и разрешит доступ всем кто авторизовался.

В моем случае перед тем как инклюдить файл в (допустим) index.php выполняем самописную функцию в которой и проводим проверку (именно в ней соединяемся с базой, выясняем каакие права у польвателя возращаем добро или облом).

Ну вот вродь и все....... что скажете? где сдесь могут быть проблемы?

   
 
 автор: Akira   (13.01.2005 в 14:00)   письмо автору
 
   для: localGhost   (13.01.2005 в 10:27)
 

А почему не с 1 до 10? Зачем сотнями исчелять?
А проблемы будут в том , что слишком все запутано =)
Проше надо делать =) А иначе потом сам спусти месяц не поймешь как все работает =))

   
 
 автор: localGhost   (14.01.2005 в 03:34)   письмо автору
 
   для: Akira   (13.01.2005 в 14:00)
 

Да можно и от 1 до 10, кому как нравиться... запутаться впринципе тут как бы и незапутаешься...... Проблему в другом вчера нашел. Дописал я код, так сказать последнюю точку постовал, начал тестировать. Все работает, все как задуманно... Но один нюанс нашел, можно сказать даже минус этого способа........ и мне кажеться достаточно существенный: если допутим пользователь по правам может зайти на определенную страницу, но допустим пускать я его на нее не хочу...... как быть - ? вот в этом случае как раз получаеться достаточно запутанно........

   
 
 автор: XPraptor   (14.01.2005 в 10:43)   письмо автору
 
   для: localGhost   (14.01.2005 в 03:34)
 

Так и не пускай. Ставь отметку в базе блокированным пользователям, а после входа пользователя первыми строками вызывай проверку блока из базы и редирект ему на выход. И усе!

   
 
 автор: glsv (Дизайнер)   (13.01.2005 в 10:16)   письмо автору
 
   для: Felix   (13.01.2005 в 08:58)
 

Посмотрите вот по этой ссылке.

http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=1347

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования