Please make sure you have the PDO extension loaded correctly before looking at this.
The method is to edit php.ini
Manually add the following two lines (without semicolon;):
extension=php_pdo.dll
extension=php_pdo_mysql.dll
and then add extension_dir
Point to the directory where php_pdo.dll and php_pdo_mysql.dll are located, such as
extension_dir = "C:php5ext"
OK,let's go..
index.php The homepage of the website is also the only entrance
The PHP code is as follows:
<?php
//...Omit
$params = array ('host' => '127.0.0.1',
'username' => 'root',
'password' => '123456',
'dbname' => 'happycms');
$db = Zend_Db::factory('pdoMysql', $params);
Zend::register('db', $db);
?>
lib/App/Article.php
The PHP code is as follows:
<?php
class App_Article {
private $db;
function App_Article() {
$this->db = Zend::registry('db');
}
function listAll() {
$result = $this->db->query('SELECT * FROM article');
$rows = $result->fetchAll();
Zend::dump($rows);
}
function listByCategory() {
}
//...omitted
}
?>
The PHP code is as follows:
ArticleController.php
class articleController extends Zend_Controller_Action {
private $view;
private $article;
function __construct() {
$this->view = Zend::registry('view');
$this->article = new App_Article();
}
public function listAllAction() {
$this->article->listAll();
$this->view->title='View Articles';
echo $this->view->render(TPL_DIR.'/tplView.php');
}
function __call($action, $arguments)
{
$this->_redirect('./');
print_r($action);
print_r($arguments);
}
}
?>
Visit http://happycms/article/listall
and get the following output:
array(1) {
[0] => array(15) {
["articleid"] => string(1) "1"
["categoryid"] => string(1) "0"
["articletitle"] => string(4) "test"
["articlefromwhere"] => string(3) "sdf"
["articlekeywords"] => string(5) "sdfds"
["articledescription"] => string(4) "test"
["articlebody"] => string(9) "sffsdfsdf"
["authorname"] => string(8) "haohappy"
["authoremail"] => string(11) " [email protected] "
["isticky"] => string(1) "0"
["isrecommanded"] => string(1) "0"
["includeattachment"] => string(1) "0"
["addtime"] => string(19) "0000-00-00 00:00:00"
["lastedittime"] => string(19) "0000-00-00 00:00:00"
["checktime"] => string(19) "0000-00-00 00:00:00"
}