【问题标题】:Simple Display Results from Database来自数据库的简单显示结果
【发布时间】:2013-11-17 02:01:20
【问题描述】:

我已经正确设置了 Zend_Db::factory 的参数,然后我查询如下:

$select = $db->select()
->from('imdb')
->limit(10);

$stmt = $db->query($select);
$result = $stmt->fetchAll();

问题: 为什么我没有看到任何显示?

我继续,我试图通过创建一个新对象来显示结果

$moviesTBL = new Application_Model_DbTable_Imdb();
$this->view->albums = $moviesTBL->fetchAll();

如果我将它与视图结合使用,它可以正常工作,但会获取所有行!!!如何让它只获取前 10 个?

foreach($this->albums as $key=> $value)
{
echo $value ->rank.' '.$value->rating.' '.$value->title.' '.$value->year.' '.$value->number_of_votes.'<br>';
}

pana4219

Posts: 2
Joined: Mon Nov 04, 2013 6:45 pm

【问题讨论】:

    标签: zend-framework zend-db


    【解决方案1】:

    试试这样的:

    $select = $db->select()
    ->from('imdb')
    ->limit(10);
    
    $result = $db->fetchAll($select);
    

    其他例子:

    $class = new Zend_Db_Table();
    $db = $class->getDefaultAdapter();
    $select = $db->select();
    $select->from('imdb');
    $select->limit(10);
    
    $result = $db->fetchAll($select);
    

    .ini

    resources.db.adapter = "pdo_mysql"
    resources.db.params.host = "localhost"
    resources.db.params.username = "root"
    resources.db.params.password = "root"
    resources.db.params.dbname = ""
    resources.db.params.charset = "utf8"
    resources.db.isDefaultTableAdapter = true
    

    Bootstrap.php:

    protected function _initDb() { 
        Zend_Db_Table_Abstract::setDefaultAdapter($this->getPluginResource('db')->getDbAdapter());
    }
    

    【讨论】:

    • 您好,感谢您的回复,但我没能成功。如果我使用 $select = $db->select() ->from('imdb') ->limit(10);正如你所建议的,我怎样才能显示结果??? $result = $db->fetchAll($select) 本身不起作用。我猜在视图本身中有一个 view-> bla bla 和一个 foreach 。你能帮我吗?另一方面,如果我写 $moviesTBL = new Application_Model_DbTable_Imdb(); $this->view->albums = $moviesTBL->fetchAll();在 fetchAll 中我使用了 $result 参数,因此它只获取前 10 个,它似乎也不起作用。
    猜你喜欢
    • 1970-01-01
    • 2011-08-03
    • 1970-01-01
    • 2016-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-06
    相关资源
    最近更新 更多