ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Zend FrameworkコミュのZend_SessionのsetSaveHandlerについて

  • mixiチェック
  • このエントリーをはてなブックマークに追加
初めての質問です。
Zend_SessionのsetSaveHandlerを使用してセッションをDBにて管理しようとおもっております。

前提条件として
DBはPOSTGRE
環境はxampp

しかし、

//DBの接続情報
$config = $this->_getDbConfig()->session->admin->toArray();
Zend_Session::setSaveHandler(new Zend_Session_SaveHandler_DbTable($config));
Zend_Session::start();
$this->session = new Zend_Session_Namespace('default');

でゼンドセッションは実行されるのですが
毎回呼び込まれるたびに
ゼンドセッション内でセッションを削除してしまって
セッションの保持ができません。

google先生に聞いても情報を得られなかったので
皆さんにご質問です。

Zend_sessionでDBでの値の保持方法を教えてください。

尚、プロファイラーで実行すると
下記のSQLを実行しています。

SELECT a.attnum, n.nspname, c.relname, a.attname AS colname, t.typname AS type, a.atttypmod, FORMAT_TYPE(a.atttypid, a.atttypmod) AS complete_type, d.adsrc AS default_value, a.attnotnull AS notnull, a.attlen AS length, co.contype, ARRAY_TO_STRING(co.conkey, ',') AS conkey FROM pg_attribute AS a JOIN pg_class AS c ON a.attrelid = c.oid JOIN pg_namespace AS n ON c.relnamespace = n.oid JOIN pg_type AS t ON a.atttypid = t.oid LEFT OUTER JOIN pg_constraint AS co ON (co.conrelid = c.oid AND a.attnum = ANY(co.conkey) AND co.contype = 'p') LEFT OUTER JOIN pg_attrdef AS d ON d.adrelid = c.oid AND d.adnum = a.attnum WHERE a.attnum > 0 AND c.relname = 'hoge_session' ORDER BY a.attnum

2番目のクエリー2
SELECT "hoge_session".* FROM "hoge_session" WHERE ((("hoge_session"."sess_id" = 'uc7m9176c06j2545vkkhjg64f6')))
3番目のクエリー3
DELETE FROM "hoge_session" WHERE ("sess_id" = 'uc7m9176c06j2545vkkhjg64f6')

コメント(0)

mixiユーザー
ログインしてコメントしよう!

Zend Framework 更新情報

Zend Frameworkのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。