Я хочу переключаться между настройками базы данных, используя сеанс, когда пользователь вошел в систему (на основе предоставленного идентификатора школы, потому что в каждой школе есть разные базы данных). Вот моя конфигурация в базе данных. php
$ci =& get_instance();
$ci->load->library('session');
$active_group = 'default';
$query_builder = TRUE;
$db['default'] = array(
'dsn' => '',
'hostname' => 'blablablah.com',
'username' => $ci->session->has_userdata('session_dbuser') ? $ci->session->userdata('session_dbuser') : 'admin_blablablah',
'password' => $ci->session->has_userdata('session_dbpass') ? $ci->session->userdata('session_dbpass') : 'dev@blablablah',
'database' => $ci->session->has_userdata('session_dbname') ? $ci->session->userdata('session_dbname') : 'admin_blablablah',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);
Пока пользователь вошел в систему, все работает, но база данных не переключается. Например, если $ci->session->userdata('session_dbuser') = 'db_blablablah'
отображаемые данные все еще из базы данных по умолчанию (в данном случае 'admin_blablablah'), хотя после проверки с помощью print_r($db['default'])
значение каждого поля изменяется.
Любые решения?