Я использую codeigniter. У меня уже есть уровни доступа разрешений php
и mysql
с использованием сеансов. Я хочу ограничить страницы, которые можно просмотреть зарегистрированным администратором, в зависимости от его уровня доступа. У меня есть в базе данных для каждого администратора (каждый id_relation
является для администратора), как изображение:Ограниченный доступ к административной области по php
Каждый из этого числа в приведенной выше таблице базы данных является страница, например: (значения подстраниц и столбцы сервисные json
)
в Главном: 1
является page 1
, 3
является page 3
, 5
является page 5
и ...
PHP: (Я пробовал)
$result = $this->db->get_where('access_level', array('id_relation'=>'6572242cc91f61b2f722e31ec55e3c7c'));
$data = array();
foreach($result->result() as $row){
$data[] = $row->mainpage;
}
if(in_array('1', $data)){
echo 'access';
}else{
echo 'not access';
} // out put is access
Теперь Как установить разрешения для subpage
для три подряда, которые имеют mainpage 1
для собственных страниц? например, в приведенной выше базе данных.
В ид 1
пользователя в mainpage
имеет доступ к странице 1
и в этом MainPage (страницы 1) он имеет доступ к страницам 3, 4, 6 в субстранице и в каждом из подстраниц он имеет доступ к службе 110. (Они соединены вместе как цепь.)
Это также для остальных строк. Мой HTML как: http://jsfiddle.net/pbNt3/ и мой PHP для данных вставки как: http://pastebin.com/HpztqSwV
Как разрешить пользователю доступ к любой из страниц (MainPage и ВложенныеСтраницы) и услуг в нем подстраниц РНР?
Если вы храните массивы в своей базе данных, вы, вероятно, ошибаетесь. –
@ Waleed Khan - Что не так? мой html выглядит так: http://jsfiddle.net/pbNt3/, а мой php для данных вставки: http://pastebin.com/HpztqSwV –
Чтобы расширить комментарий @ WaleedKhan: вы должны предпочтительно использовать отдельную перекрестную ссылку таблицы для полей, в которых вы храните данные массива. – Abhilash