0
경로가있는 내 라이브러리를 만들었습니다 : library/Mylib
. 나는 library/Mylib/
의 클래스가 Acl.php
이름이 :내 자신의 ZF 라이브러리에서 mysql에 연결하는 방법?
class Mylib_Acl extends Zend_Acl{
public $_db;
public function init(){
$this->_db = new Zend_Db_Adapter_Pdo_Mysql(
array(
'host' => 'localhost',
'username' => 'username',
'password' => 'password',
'dbname' => 'mydb'
)
);
Zend_Db_Table_Abstract::setDefaultAdapter($this->_db);
}
public function __construct(){
self::initRole();
}
public function initRole(){
Zend_Debug::dump($this->_db);
Zend_Debug::dump(Zend_Registry::get('db'));
die;
$sql = 'SELECT * FROM some_table';
$result = $this->_db->query($sql)->fetchAll();
}
Zend_Debug::dump($this->_db)
이 나에게주는 :
Fatal error: Uncaught exception 'Zend_Exception' with message 'No entry is registered for key 'db'' in /home/truong/public_html/test2/library/Zend/Registry.php:147 Stack trace: #0 /home/truong/public_html/test2/library/Fxml/Acl.php(19): Zend_Registry::get('db') #1 /home/truong/public_html/test2/library/Fxml/Acl.php(62): Fxml_Acl->initRole() #2 /home/truong/public_html/test2/application/Bootstrap.php(25): Fxml_Acl->__construct() #3 /home/truong/public_html/test2/library/Zend/Application/Bootstrap/BootstrapAbstract.php(666): Bootstrap->_initAutoload() #4 /home/truong/public_html/test2/library/Zend/Application/Bootstrap/BootstrapAbstract.php(619): Zend_Application_Bootstrap_BootstrapAbstract->_executeResource('autoload') #5 /home/truong/public_html/test2/library/Zend/Application/Bootstrap/BootstrapAbstract.php(583): Zend_Application_Bootstrap_BootstrapAbstract->_bootstrap(NULL) #6 /home/truong/public_html/test2/library/Zend/Application.php(355): Zend_Application_Bootstrap_BootstrapAbstract->bootstrap(NULL) #7 /home/truong/pu in /home/truong/public_html/test2/library/Zend/Registry.php on line 147
내가 내 응용 프로그램/부트 스트랩의 핵심 'DB'등록 않았다 NULL
Zend_Debug::dump(Zend_Registry::get('db'))
날이 오류를 줄 .php :
public function _initDb(){
$db = new Zend_Db_Adapter_Pdo_Mysql(
array(
'host' => 'localhost',
'username' => 'username',
'password' => 'password',
'dbname' => 'mydb'
)
);
Zend_Db_Table_Abstract::setDefaultAdapter($db);
Zend_Registry::set('db', $db);
}
그리고 내가 가지고 있었 : application.ini
내가 잘못 했어?
정말 고마워요. 문제가 해결되었습니다. –