このページの内容
- (1)app/Config/core.phpにて、Sessionをdatabaseで管理する設定
- (2)databaseにcake_sessionsテーブルを作る
- (3)Session read/writeの使い方
(1)app/Config/core.phpにて、Sessionをdatabaseで管理する設定
□app/Config/core.phpのSessionに関する説明を読む
* The built in defaults are:
*
* - 'php' - Uses settings defined in your php.ini.
* - 'cake' - Saves session files in CakePHP's /tmp directory.
* - 'database' - Uses CakePHP's database sessions.
* - 'cache' - Use the Cache class to save sessions.
160行目あたりに上記の記述があります。
↓defaults => 'php'の部分を
'database'に変更すれば良いようです
Configure::write('Session', array(
'defaults' => 'php',
));
'cookie'と'timeout'の設定を追加しておきます。
↓下記は、24*60*60*7=1週間としました。
Configure::write('Session', array(
'defaults' => 'database',
'cookie' => 'SID',
'timeout' => 24*60*60*7,
));
(2)databaseにcake_sessionsテーブルを作る
□app/Config/Schema/sessions.sql を読む
CREATE TABLE cake_sessions (
id varchar(255) NOT NULL default '',
data text,
expires int(11) default NULL,
PRIMARY KEY (id)
);
上記のSQLを実行して、利用中のデータベースに cake_sessionsテーブル作成して完了です。
(3)Session read/writeの使い方
・セッション・オブジェクトへのの書き込み
$this->Session->write('LoginUser.Id', $uid);
・セッション・オブジェクトの読み出し
$this->Session->read('LoginUser.Id');
0 件のコメント:
コメントを投稿