我正在尝试显示数据库中的数据,我想知道我做错了什么。
类(class):
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
list 1
类别 2
list 1
list 2
类别 3
list 1
list 2
list 3
我希望它显示:
类别 1
list 1
类别 2
list 2
类别 3
list 3
最佳答案
也许尝试将其放在 getListing 的开头:
$this->sinfo = '';
看起来数组保留了以前的值。
关于php - 显示数据库中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10021647/