|
|
|
| Как сделать авторизацию пользователя на сайте с приминением mysql (логины и пароли должны находиться в mysql) , чтобы в зависимости от того какой пользователь авторизовался открывалась страница с разными списками меню (т.е. для разных пользователей должно открыться меню с разным содержимым). | |
|
|
|
|
|
|
|
для: Felix
(13.01.2005 в 08:58)
| | Думаю для этогов базе данных надо по мио имени пользователя и пароля хранить еще "уровень доступа" для каждого пользователя. А далее продумать как зная уровнь доступа авторизовавшегося пользователя отсечь его или же пустить в определенные места.
Я кстати сейчас именно этим занимаюсь.... Файл авторизации уже написал.... щас вот пытаюсь разработать систему контролирующую код доступа посетителя. Замутил правда через чур....... а так вроде нормально.. | |
|
|
|
|
|
|
|
для: localGhost
(13.01.2005 в 09:04)
| | Щас юолее детально опишу мою идею, а вы мне скажите стоит так делать или нет.
Вобщем начу с того, что пользователей мы разделем по правам используя условнуй код, число от 100 до 1000 с шагом 100. (100, 200, 300, ...., 1000). 100 - самый низкий уровень доступа, 1000 - самый высокий уровень доступа. для каждого посетителя код доступа будет записан в базе данных рядом с именем и паролем.
В моем случае, чтобы добавить новый раздел в меню достаточно просто добавить файл (так сказать модуль) в определенную директорию.
так вот, чтобы ограничить доступ к разделу, я в самом начале, а точнее во второй строчке файла (первая будет <?) сообщаю о том кого пускать в данный раздел, т.е. пользователей с кодом доступа не ниже какого значения. Выглядит это примерно так:
Обратите внимание: это должен обязательно коментарий. О том что мы сообщаем о правах доступа на эту страницу говорит специальная строка // -----, если она будет отсутсвовать то код просто проигнорирует эту строчку и разрешит доступ всем кто авторизовался.
В моем случае перед тем как инклюдить файл в (допустим) index.php выполняем самописную функцию в которой и проводим проверку (именно в ней соединяемся с базой, выясняем каакие права у польвателя возращаем добро или облом).
Ну вот вродь и все....... что скажете? где сдесь могут быть проблемы? | |
|
|
|
|
|
|
|
для: localGhost
(13.01.2005 в 10:27)
| | А почему не с 1 до 10? Зачем сотнями исчелять?
А проблемы будут в том , что слишком все запутано =)
Проше надо делать =) А иначе потом сам спусти месяц не поймешь как все работает =)) | |
|
|
|
|
|
|
|
для: Akira
(13.01.2005 в 14:00)
| | Да можно и от 1 до 10, кому как нравиться... запутаться впринципе тут как бы и незапутаешься...... Проблему в другом вчера нашел. Дописал я код, так сказать последнюю точку постовал, начал тестировать. Все работает, все как задуманно... Но один нюанс нашел, можно сказать даже минус этого способа........ и мне кажеться достаточно существенный: если допутим пользователь по правам может зайти на определенную страницу, но допустим пускать я его на нее не хочу...... как быть - ? вот в этом случае как раз получаеться достаточно запутанно........ | |
|
|
|
|
|
|
|
для: localGhost
(14.01.2005 в 03:34)
| | Так и не пускай. Ставь отметку в базе блокированным пользователям, а после входа пользователя первыми строками вызывай проверку блока из базы и редирект ему на выход. И усе! | |
|
|
|
|