0

mysql dbに正しく接続するには? 私のapplication.iniファイルには、すべてのデータベースの詳細を入れました:

[master]
adapter = PDO_MYSQL
params.host = localhost
params.username = root
params.password = ''
params.dbname = accounts_db

これらの詳細を取得して、データベースに接続したいと思います。

4

3 に答える 3

1

Zend Frameworkは、アプリケーション開発を開始するための最も簡単なフレームワークではありません。私の最善のアドバイスは、クイックスタートドキュメント、特にZend_ApplicationZend_DbZend_Layout、そしてもちろんZend_Controllerを扱う章を読み始めることです。

あなたの質問に答えるために、データベース構成を追加することapplication.iniは、db接続をセットアップすることではありません。以下を使用して、アプリケーションリソースをブートストラップする必要があります。

[production]

; Database (production)
resources.db.adapter = "pdo_mysql"
resources.db.params.host = "localhost"
resources.db.params.username = "my_user_who_is_not_root"
resources.db.params.password = "my_strong_password"
resources.db.params.dbname = "accounts_db"
resources.db.isDefaultTableAdapter = true

; Other configurations
; ...

[development : production]

; Database (development settings)
resources.db.params.username = "root"
resources.db.params.password = ""
resources.db.params.dbname = "accounts_db_dev"

この時点で、データベース接続はサーバーにクエリを実行する準備ができています

コントローラ(またはその他のもの)に、次を使用して接続を取得できます。

Zend_Db_Table::getDefaultAdapter();

Bootstrapへの接続への参照を追加することもできます。Zend_Register

protected function _initDbRegister()
{
    $db = $this->bootstrap('Db')->getResource('Db');
    Zend_Register::set('Zend_Db', $db);
}

後で、Zend_Register::get('Zend_Db')インスタンスを取得するために呼び出すことができます。

于 2012-07-11T10:04:22.633 に答える
1

デフォルトの mysql データベース アダプタの場合は、一番下に行を追加できます。その場合は auto になります。Zend_Db_Table オブジェクトなどで使用されます。

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

反対側では、どこでもアダプターを取得できます

Zend_Db_Table::getDefaultAdapter();

幸運を。

于 2012-07-11T09:35:33.860 に答える
1

これを試してみてください

resources.db.adapter = PDO_MYSQL
resources.db.params.host = localhost
resources.db.params.username = root
resources.db.params.password = 
resources.db.params.dbname = accounts_db

私のサイトでは完璧に動作します

于 2012-07-11T06:05:34.493 に答える