2016-11-17 4 views
0

Я начинаю сессию session_start. И у меня есть следующие настройки в моем config.php. Я обнаружил, что это забивает мою базу данных. Поэтому я не хочу записывать сессию нигде.Вопросы о сессии CodeIgniter

$config['sess_driver'] = 'database'; 
$config['sess_cookie_name'] = 'ci_session'; 
$config['sess_expiration'] = 7200; 
$config['sess_save_path'] = 'ci_sessions'; 

Q1. Должен ли я указывать CodeIgniter session driver? Могу ли я сделать это без драйвера сессии? Если это так, мне нужно установить $config['sess_driver'] = '';?

Q2. Когда CodeIgniter помещает данные в базу данных? Это делает это, когда у вас есть посетители вашего сайта?

ответ

0
  1. Если вы используете PHP нативные сеансов с помощью session_start(), то не загружает библиотеку CI сессий и вернуться к использованию $ _SESSION ... Не использовать оба.

  2. Загрузите библиотеку сеансов, где вам нужно, и не загружайте ее автозагрузкой. Таким образом, вам может не понадобиться загружать его на своей общедоступной домашней странице. Только на ваших страницах участника, если это ваша реализация.

Только одна сессия для каждого пользователя создана или пока не истечет время. Кроме того, система имеет сбор мусора, поэтому «засорение» вашей базы данных не должно быть проблемой.

Мне очень нравится иметь сайт, на котором мой сеанс таблицы «забивается», так как это означает, что у меня много активности.

0

Вы можете использовать session library в codeigniter, и вы должны загрузить библиотеку для использования вместо начала сеанса.
вы можете загрузить библиотеку в автоматической нагрузке или использовании:

$this->load->library("session"); 

в контроллере.

Смежные вопросы