簡體   English   中英

用戶登錄后,Zend Framework 1.2選擇數據庫運行時

[英]Zend Framework 1.2 select database runtime after user login

我有這個application.ini

resources.db.params.host = localhost
resources.db.params.username = root
resources.db.params.password = password
resources.db.params.dbname = zend_db

但是我想在用戶登錄后選擇數據庫:例如

以ADMIN身份登錄--->選擇mysql db:adminYYY

以TEST身份登錄--->選擇mysql數據庫:TestXXX

以cat身份登錄--->選擇mysql數據庫:catZZZ

您可能必須實例化到服務器的多個連接,每個連接都使用Zend_Application_Resource_Multidb到不同的數據庫。 像這樣:

resources.multidb.dbadmin.params.host = localhost
resources.multidb.dbadmin.params.username = root
resources.multidb.dbadmin.params.password = password
resources.multidb.dbadmin.params.dbname = 'admin'

resources.multidb.dbtest.params.host = localhost
resources.multidb.dbtest.params.username = root
resources.multidb.dbtest.params.password = password
resources.multidb.dbtest.params.dbname = 'test'

resources.multidb.dbcat.params.host = localhost
resources.multidb.dbcat.params.username = root
resources.multidb.dbcat.params.password = password
resources.multidb.dbcat.params.dbname = 'cat'

因此,您可以編寫一個自定義auth類,將用於檢索每個數據庫連接:

$resource = $bootstrap->getPluginResource('multidb');
$dbadmin = $resource->getDb('dbadmin');
$dbtest = $resource->getDb('dbtest');
$dbcat = $resource->getDb('dbcat');

或者在您的引導程序中執行此操作。

參見Zend_Application_Resource_Multidb

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM