# Zend_Application_Resource_Session

`Zend_Application_Resource_Session` est utilisé pour configurer `Zend_Session` et éventuellement un support de sauvegarde sessions (SaveHandler).

Pour créer un support de sauvegarde session, passez la clé saveHandler (case insensitive) à la ressource. La valeur d'une telle option peut être :

- String : cette chaîne indique le nom d'une classe implémentant `Zend_Session_SaveHandler_Interface`.

- Array : avec les clés "class" et optionnellement "options", indiquant une classe à instancier (implémentant `Zend_Session_SaveHandler_Interface`) et un tableau d'options à passer à son constructeur.

- `Zend_Session_SaveHandler_Interface` : un objet implémentant cette interface.

Toute autre option non reconnue sera alors passée à `Zend_Session::setOptions()` pour configurer `Zend_Session`.

## Exemple de ressource session

Voici un fichier INI permettant de configurer une session via la ressource. Il affecte des options à `Zend_Session` et configure une instance de `Zend_Session_SaveHandler_DbTable`.

    resources.session.save_path = APPLICATION_PATH "/../data/session"
    resources.session.use_only_cookies = true
    resources.session.remember_me_seconds = 864000
    resources.session.saveHandler.class = "Zend_Session_SaveHandler_DbTable"
    resources.session.saveHandler.options.name = "session"
    resources.session.saveHandler.options.primary.session_id = "session_id"
    resources.session.saveHandler.options.primary.save_path = "save_path"
    resources.session.saveHandler.options.primary.name = "name"
    resources.session.saveHandler.options.primaryAssignment.sessionId = "sessionId"
    resources.session.saveHandler.options.primaryAssignment.sessionSavePath = "sessionSavePath"
    resources.session.saveHandler.options.primaryAssignment.sessionName = "sessionName"
    resources.session.saveHandler.options.modifiedColumn = "modified"
    resources.session.saveHandler.options.dataColumn = "session_data"
    resources.session.saveHandler.options.lifetimeColumn = "lifetime"

## Configurez votre base de données avant !

Si vous configurez le gestionnaire `Zend_Session_SaveHandler_DbTable`, vous devez configurer votre base de données avant. Pour cela, servez vous de la ressource Db et assurez vous que la clé "resources.db" apparaît bien avant la clé "resources.session". Vous pouvez aussi utiliser votre propre ressource qui initialise la base de données et affecte l'adaptateur `Zend_Db_Table` par défaut.