2009-07-08 11 views
1

私のサイトでは次のようなエラーが発生していますが、私は何をすべきか分かりません。私は何かが欠けていることを知っているが、私はそれを理解できない。私のINIファイルによるZendエラー

あなたは私がここで達成しようとしていますかを見ることができます:4.6.4. Zend_Application_Resource_Session

致命的なエラー:キャッチされない例外メッセージと「Zend_Db_Table_Exception」Cで「Zend_Session_SaveHandler_DbTableが見つかりませんアダプター」:Zendの\ \ xamppの\ htdocsに\アプリ\ライブラリをZend_Db_Table_Abstract - > _ setupDatabaseAdapter()#1 C:\ Db \ Table \ Abstract.php:667スタックトレース:#0 C:¥xampp¥htdocs¥app¥library¥Zend¥Db¥Table¥Abstract.php(652) Zend_Db_Table_Abstract - > _ setup()#2 C:\ xampp \ htdocs \ app \ library \ Zend \ Db \ Table \ Abstract.php(xampp \ htdocs \ app \ library \ Zend \ Session \ SaveHandler \ DbTable.php(401) Zend_Session_SaveHandler_DbTable - > _ setup()#3 C:¥xampp¥htdocs¥verelo¥library¥Zend¥Session¥SaveHandler¥DbTable.php(205):Zend_Db_Table_Abstract - > __ construct(Array)#4 C:\ xampp \ htdocs \ app \ library \ Zen (93):Zend_Application_Resource_Session-> setSaveHandler(59):Zend_Session_SaveHandler_DbTable - > __ construct(Array)#5 C:¥xampp¥htdocs¥app¥library¥Zend¥Application¥Resource¥ResourceAbstract.php C:¥xampp¥htdocs¥app¥library¥Zend¥Db¥Table¥Abstracts内のZend_Application_R(配列)#6 C:¥xampp¥htdocs¥app¥library¥Zend¥Application¥Resource¥ResourceAbstract.php(72)ライン上のPHP 667

は、ここに私のconfig.iniファイルされる:

[production] 
phpSettings.display_startup_errors = 0 
phpSettings.display_errors = 0 
includePaths.library = APPLICATION_PATH "/../library" 
bootstrap.path = APPLICATION_PATH "/Bootstrap.php" 
bootstrap.class = "Bootstrap" 

resources.db.adapter = "pdo_mysql" 
resources.db.params.host = "localhost" 
resources.db.params.username = "root" 
resources.db.params.password = "" 
resources.db.params.dbname = "app" 
resources.db.isDefaultTableAdapter = true 

resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers" 
;resources.frontController.moduleControllerDirectoryName = "actions" 
;resources.frontController.moduleDirectory = APPLICATION_PATH "/modules" 
;resources.frontController.defaultControllerName = "site" 
;resources.frontController.defaultAction = "home" 
;resources.frontController.defaultModule = "static" 
;resources.frontController.baseUrl = "/subdir" 
;resources.frontController.plugins.foo = "My_Plugin_Foo" 
;resources.frontController.plugins.bar = "My_Plugin_Bar" 
resources.frontController.env = APPLICATION_ENV 

resources.layout.layout = "layout" 
resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts" 

resources.view[] = 
resources.view.encoding = "UTF-8" 
resources.view.basePath = APPLICATION_PATH "/views/scripts" 

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" 

[development : production] 
phpSettings.display_startup_errors = 1 
phpSettings.display_errors = 1 

resources.db.params.username = "root" 
resources.db.params.password = "" 

私はもちろんのrootパスワードを削除は、しかし、それは私がこの記事のために変更されたすべてのです。

+0

セッションの前にdbリソースが初期化されていないか、デフォルトのテーブルアダプタとして登録されていないようです - –

+0

私はresources.db.isDefaultTableAdapter = trueを設定しています私はこのメッセージをなぜ受け取るのか分かりません。 – MichaelICE

答えて

7

データベースリソースが最初にロードされていることを確認する必要があります。最も簡単な方法は、アプリケーション/ bootstrap.phpのに新しい機能を追加することです:

もちろん
<?php 

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap 
{ 
    public function _initSessionAfterDb() 
    { 
     $this->bootstrap('db'); 
     $this->bootstrap('session'); 
    } 

} 

は、あなたは、これは自動的に起こることを期待したいので、私はZend_Applicatonのセッションリソース内の依存関係のバグがあることを疑います...

関連する問題