В моей группе Я установил, где я могу проверить или снять флажок с каждого имени контроллера, а затем щелкнуть на отправке и отправить имена в базу данных. В текстовом/массивном формате. И эти контроллеры я бы иметь доступ к иным следует, если попытаться получить доступ к этому контроллеру, который был снят бы получить перенаправлены в 'admin/error_permission'
не перенаправляется, если у пользователя есть разрешение
Каждый пользователь имеет идентификатор группы пользователя рядом с идентификатором пользователя.
Как я смог получить имена моих контроллеров из базы данных, а затем их перенаправлять на моей странице ошибки, как так
Имя таблицы: user_group: колонны: user_group_id, имя, разрешение
имя столбца, в котором хранятся имена контроллеров является разрешение и имена контроллеров сохраняются как этот разрешенияa:2:{s:6:"access";a:1:{i:0;s:11:"column_left";}s:6:"modify";a:1:{i:0;s:11:"column_left";}}
Вместо того, чтобы писать каждое имя контроллера в массиве, как я могу получить его из базы данных.
function __construct()
{
parent::__construct();
if (! $this->session->userdata('logged_in'))
{
// Allow some methods names from the database permission?
$allowed = array(
);
if (! in_array($this->router->fetch_method(), $allowed)
{
// Not Allowed Access
redirect('admin/error_permission');
}
}
}
Это выглядит как PHP [сериализованными массивов и объектов] (http://php.net/manual/en/function. serialize.php). Если Codeigniter сохранил их, у него, надеюсь, есть простой метод для их индивидуального вызова. Получение подробностей из MySQL с помощью запроса было бы довольно сложным. Он действительно должен быть полностью восстановлен PHP, а затем 'unserialized()' 'd, а Codeigniter должен иметь документированный путь. –
О мальчик. Вы не можете получить индивидуальный ключ или значения из разрешения без unserializing = db не может вам помочь, вам нужно запросить & unserialize, найти имя. Это странно. Сохранение данных в сериализованной форме очень неэффективно с точки зрения дизайна базы данных (если только это не база данных sql, которая любит json.). Данные должны храниться в отдельных таблицах, отражающих их внутреннюю структуру. Это позволит легко отвечать на запросы. –
Есть ли у вас какие-либо примеры несессиализации, чтобы иметь возможность получить то, что я получаю после –