zend_db连接mysql(附完整代码)(转)

在看这些之前请确保你正确加载了PDO扩展。

作法是编辑php.ini
手动增加下面这两行(前面要没有分号;):
extension=php_pdo.dll
extension=php_pdo_mysql.dll

然后要把extension_dir
指向php_pdo.dll及php_pdo_mysql.dll所在目录,如
extension_dir = "C:php5ext"

OK,lets go..

index.php 网站首页,也是唯一入口

 

PHP代码如下:

<?php
//...省略

$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

 

PHP代码如下:

<?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() {
        }

        //...省略
}

?>

 


PHP代码如下:

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);
    }
}
?>


访问 http://happycms/article/listall

得到以下输出:

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) "s...@df.com"
    ["issticky"] => 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"
  }

posted @ 2013-07-02 16:24  幻星宇  阅读(201)  评论(0编辑  收藏  举报