Skip to content

asaushkin/session-user

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Модуль предназначен для поддержки пользовательских атрибутов в сессии.


*Возможности*

Для одного пользователя (даже если он использует разные браузеры или находится 
территориально в различных местах) будет использована одна и та же сессия.  

Хранание идентификатора пользователя в таблице сессий, такм образом поиск
сессии по идентификатору пользователя теперь стал возможен.


*Зависимости*

Использует стандартный модуль database в ko3


*Установка*

1. В application/bootstrap.php добавьте строку для использования данного менеджера 
сессий:
Kohana_Session::$default = 'user';

2. В application/bootstrap.php массиве инициализации модулей добавить строку:
		'session-user'	=> PATH_TO_MODULE . 'session-user',   // Пользовательские сессии


Как должен выглядеть ваш bootstarp.php после модификации:

Kohana_Session::$default = 'user';

/**
 * Enable modules. Modules are referenced by a relative or absolute path.
 */
Kohana::modules(array(
		// System modules
		'database'	=> $kohana_installation . 'modules/database',   // Database access

		// 3rd party modules
		'session-user'	=> PATH_TO_MODULE . 'session-user',   // Пользовательские сессии
	));

3. Модифицируйте таблицу sessions для поддержки иденификатора пользователя
(пример дан для mysql)

alter table `sessions` 
	add `user_id` integer unsigned, 
	add unique `uniq_sess_user_id` (`user_id`);

Опционально можете добавить внешний ключ на таблицу пользователей для поддержания
целостности базы данных.

*Использование*

$sess = Session::instance()->session_load($user);

где $user объект имплементирующий интерфейс Interface_User с единственным методом
get_pk() возвращающий идентификатор пользователя.
 

About

Kohana 3 module for integrating with user accounting

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published