[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Создание разграничения доступа
vox1k
Создание разграничения доступа с помощью Mysql. подскажите как сделать используя поле в таблице:
например поле называется opredelitel'
Admin имеет полный доступ к формам
user ограниченный (как сделать)
ГДЕ-ТО СЛЫШАЛ ЧЕРЕЗ СЕССИОННУЮ ПЕРЕМЕННУЮ

Подскажите кто знает, заранее благодарен




Спустя 2 часа, 40 минут, 11 секунд (26.01.2010 - 00:11) Gabriel написал(а):
vox1k
дергаешь из базы значения поля хранишь в сессии и при переходе туда где не все должны попадать сравниваешь переменную с уровнем доступа что-то типа if ( $_SESSION['чего-то там'] == admin ) { тут код для выполнения } else { echo 'нефик тебе тут делать вот дорастешь до админа приходи'; }

Спустя 8 часов, 34 минуты, 10 секунд (26.01.2010 - 08:45) vox1k написал(а):
можно ли сделать так, что при входе под определенным пользователем некоторые ссылки будут не активны (очень важно)

Спустя 2 часа, 5 минут, 23 секунды (26.01.2010 - 10:50) Kuliev написал(а):
Цитата (vox1k @ 26.01.2010 - 10:45)
можно ли сделать так, что при входе под определенным пользователем некоторые ссылки будут не активны (очень важно)

Все можно!!!

Спустя 5 минут, 48 секунд (26.01.2010 - 10:56) Alecs написал(а):
Цитата (vox1k @ 26.01.2010 - 05:45)
можно ли сделать так, что при входе под определенным пользователем некоторые ссылки будут не активны (очень важно)

Смотрите пост Gabriel.

Разграничение доступа лучше сделать через объектную модель. Тогда при дальнейшем развитии проекта у вас будет меньше головной боли. Я делаю так:
1. Страничка и ссылка на нее располагаются в одном объекте, таким образом я имею 99% гарантию отсутствия битых ссылок.
2. Внутри объекта есть список пользователей которым разрешено просматривать, редактировать и т.д. и т.п.
3. Обработчик объекта перед выполнением проверяет права пользователя по списку объекта. Это дает гарантии что никто не обойдет не активные ссылки, скажем через подстановку в URL.

Спустя 1 час, 15 минут, 27 секунд (26.01.2010 - 12:11) Gabriel написал(а):
vox1k
можно заныкать ссылку вообще чтобы ее посторонние глаза даже не видели

Спустя 3 часа, 40 минут, 23 секунды (26.01.2010 - 15:52) vox1k написал(а):
я бы хотел по конкретнее понять как это сделать (если можно)

Спустя 8 часов, 15 минут, 17 секунд (27.01.2010 - 00:07) anonymouse написал(а):
vox1k
Дружише да тут все просто...

У тебя есть массив _SESSION в него закидывай все что угодно - допустим хоть привилегий пользователей.


П.С. КЛИК СЮДА ОЧЕНЬ ВАЖНО
!!!!!

Спустя 17 часов, 48 минут, 22 секунды (27.01.2010 - 17:56) vox1k написал(а):
я понимаю как работают сессионные переменные меня мучает вопрос как мне решить вопрос при входе на сайт для разных пользователей будут не активны ссылки вот это я не могу реализовать)

Спустя 1 минута, 38 секунд (27.01.2010 - 17:57) vox1k написал(а):
например админ может переходить по всем ссылкам, а user по ограниченому количеству другие будут не активны. вот это главная проблема

Спустя 3 минуты, 39 секунд (27.01.2010 - 18:01) Gabriel написал(а):
vox1k

<a <?php if ( $_SESSION['some'] == admin ) echo 'href="somelocation.php"'; ?>>Куда идем мы с Пяточком БОЛЬШОЙ (НУ ПРОСТО ОГРОМНЫЙ СЕКРЕТ)!</a>

а вот без информации как ты раздаешь права (то есть чем является значение цифрой/стрингом) сказать не получиться.

Спустя 1 час, 4 минуты, 39 секунд (27.01.2010 - 19:05) vox1k написал(а):
скорее всего создам отдельное поле в таблице с пользователе и там у каждого пользователя поставлю свою цифру

Спустя 1 час, 12 минут, 43 секунды (27.01.2010 - 20:18) Gabriel написал(а):
vox1k
правильно мыслиш smile.gif тогда можно будет делать так
<a <?php if ( $_SESSION['some'] > 5 ) echo 'href="somelocation.php"'; ?>>Куда идем мы с Пяточком БОЛЬШОЙ (НУ ПРОСТО ОГРОМНЫЙ СЕКРЕТ)!</a>

и таким образом все у кого право доступа будет меньше 5 по ссылке перейти не смогут.

Спустя 25 минут, 33 секунды (27.01.2010 - 20:44) vox1k написал(а):
f вот как ссылки зделать не активными не подскажите???

Спустя 3 часа, 22 минуты, 15 секунд (28.01.2010 - 00:06) Gabriel написал(а):
vox1k
ну дык написал же smile.gif русским по белому <?пхп если есть такая сессия и ее значение больше 5 то пишем href. ну а если будет меньше то никакого значия не будет и ссылка будет не кликабельна и куда она ведет никто не увидит.

Спустя 12 минут, 33 секунды (28.01.2010 - 00:19) arlamar написал(а):
Цитата
f вот как ссылки зделать не активными не подскажите???

ты имеешь ввиду что бы нельзя было перейти на somelocation.php?

тогда делаешь так:
$allowed = array(3,4,5,12); //группы пользователей
if (!in_array($_SESSION['some'], $allowed)) {
header('Location: index.php');
}

Спустя 20 часов, 19 минут, 50 секунд (28.01.2010 - 20:38) inpost написал(а):
Я сделал графу: доступ к новостям, там указал права:
0 - нет прав, 1 - ограниченные права, 2 - полные права.
В начале проверял пользователя на права, и выводил ту информацию, в зависимости от его прав
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.