如何从数据库中获取行列表

时间:2014-07-09 14:35:16

标签: php mysql zend-framework2

我正试图以这种方式从php中的mysql显示一些数据: CompteDAO.php

<?php
namespace DAO;
include_once(__DIR__ . '/bdConfig.php');

class CompteDAO
{
    public $bdd;

    public function getList(){
        $this->bdd = new \DAO\bdConfig();
        $requete = $this->bdd->bd->prepare('SELECT * FROM compte');
        $requete->execute();      
        return $requete;        
    }
}
?>

bdConfig.php

<?php
namespace DAO;

use PDO;

class bdConfig
{
    public $bd;

    public function __construct()
    {
        try
        { 
            $this->bd = new PDO('mysql:host=127.0.0.1;dbname=d', 'root', ''); 
        }
        catch (Exception $e) 
        { 
            die('Erreur: ' . $e->getMessage()); 
        }
    }
}
?>

的index.php

$daoCompte         = new \DAO\CompteDAO();
$comptes           = $daoCompte->getList();

while ($data = $this->comptes->fetch()) {
    echo '<td>' . $data['CIN'] . '</td>';
}

但是,这样做,我没有结果。 (知道我的数据库不是空的)我认为问题来自getList返回值,但我无法找到原因以及如何解决它。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

试试这个:

$daoCompte         = new \DAO\CompteDAO();
$comptes           = $daoCompte->getList();
$dataArray         = $comptes->fetchAll(PDO::FETCH_ASSOC);

foreach ($dataArray as $data) {
    echo '<td>' . $data['CIN'] . '</td>';
}

您没有使用类,并且没有类属性名称$comptes。因此$this->comptes无效。