我有一个数据库与成员加入,我试图显示来自每个国家的成员数量。列表按组列出的行数
这里是我使用,以显示国家的国旗代码:
<?
foreach($sorters as $sortvalue)
if($sortvalue == '')
echo '<li> <a href="' . $list_url . $connector . $sortfield .
'=none">None given</a> </li>';
else
echo '<a href="' . $list_url . $connector . $sortfield .
'=' . $sortvalue . '"><img src="' . $flags . str_replace(' ', '_', $sortvalue) . '.gif" title="' . $sortvalue . '" alt="' . $sortvalue . '"></a> ' . $countrynum . ' fans<br>';
}
?>
我真的找了答案,并不断看到相同类型的代码,但我一直没能让它为我工作。
我已经试过这样:
$countrynum = SELECT COUNT(name) FROM $table WHERE country = $sortvalue;
我foreach语句后插入。这(和我试过的每一个其他迭代给了我解析错误:语法错误,意外的'COUNT'(T_STRING)...
最接近我来解决这个问题是通过使用此代码虽然,我不应该重新连接到数据库应该我):
<?
foreach($sorters as $sortvalue)
if($sortvalue == '')
echo '<li> <a href="' . $list_url . $connector . $sortfield .
'=none">None given</a> </li>';
else
$dbh = new PDO("mysql:host=$hostname;dbname=$db", $username, $password);
foreach($dbh->query('SELECT country, COUNT(*) FROM $table GROUP BY country') as $row) {
echo '<a href="' . $list_url . $connector . $sortfield .
'=' . $sortvalue . '"><img src="' . $flags . str_replace(' ', '_', $sortvalue) . '.gif" title="' . $sortvalue . '" alt="' . $sortvalue . '"></a> ' . $row['COUNT(*)'] . ' fans<br>';
}
?>
这给了我正确的行(成员)数,但相同的单一标志物显示每个数字,而不是相应的标志旁与
成员的数量。我敢肯定,这是可能是很多的,你超简单的,但我是一个新手,谁是真正想学习的编码,到目前为止,这主要是意味着切割,粘贴和大量的反复试验。 任何帮助(和学习资源建议)将非常感激。 :)
什么是$ sorters和$ sortvalue? –