我尝试从 MySQL 数据库中检索单个值,并且正在使用 Zend Framework。这是application.ini
我用来存储数据库信息的一部分。
[production]
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
resources.db.isDefaultTableAdapter = true
这是Bootstrap.php
:
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
protected function _initDbRegister()
{
$db = $this->bootstrap('Db')->getResource('Db');
$config = new Zend_Config((array('database'=>array('params'=>$db))));
Zend_Registry::set('config',$config);
}
}
这是我用来从数据库中检索数据的代码。
class User
{
public function authenticate()
{
$success = false;
$this->encrypt();//use to hash the provided password
try{
$conf = Zend_Registry::get('config');
$db = Zend_Db::factory($conf->database);
$select = $db->select()
->from('user','COUNT(*)')
->where('userName = ?',$this->userName)
->where('password = ?',$this->password);
$stmt = $select->query();
$result = $stmt->fetchColumn(0);
if($result == 1){
$success = true;
return $success;
}
} catch (Exception $e) {
$e->getMessage();
return $success;
}
}
}
注意:mysql_connect()
我之前使用and
对此进行了测试mysql_query()
。然后它工作得很好。如果查询成功,它会显示主页,否则它会重定向到欢迎页面。然后我只更改了User
类,现在它在尝试登录时只显示一个空白页面。为什么是这样?