2012-04-05 208 views
0

我试图从数据库中显示数据,我想知道我做错了什么。显示来自数据库的数据

类别:

class Information { 

    protected $info; 

    protected $sinfo; 

    public function __construct() 
    { 
     $this->db = new Config; 

     $r = $this->db->query('SELECT * FROM categories'); 

     while($row = $r->fetch_array()) 
     { 
      $this->info[] = $row; 
     } 

    } 

    public function getCategory() 
    { 
     return $this->info; 
    } 

    public function getCategoryTitle($category_title) 
    { 
     echo $category_title; 
    } 

    public function getListing($category_id) 
    { 

     $s = $this->db->query("SELECT * FROM listings WHERE category_id = $category_id"); 

     while($sow = $s->fetch_array()) 
     { 
      $this->sinfo[] = $sow; 
     } 
     return $this->sinfo; 
    } 

    public function getListingTitle($listing_title) 
    { 
     echo $listing_title; 
    } 

} 

显示的信息:

$display_listings = new Info(); 

foreach ($display_listings->getCategory() as $row) 
{ 
    $display_listings->getCategoryTitle($row['category_title']); 

    foreach ($display_listings->getListing($row['category_id']) as $sow) 
    { 
     $display_listings->getListingTitle($sow['listing_title']); 
    } 
} 

这表明:

类别1

清单1

类别2

清单1

清单2

3类

清单1

清单2

清单3

我想让它显示:

类别1

清单1

类别2

清单2

3类

清单3

回答

2

也许尝试把这个在getListing的开头:

$this->sinfo = ''; 

它看起来像数组保持以前的值。

+0

感谢您的帮助! – markerpower 2012-04-05 02:35:49

+0

完全没问题:) – 2012-04-05 03:11:51

相关问题