我正在创建一个应用程序,其中结果将显示在一个组/批
中示例输出应该是: 第1批: 显示 - >来自DB的所有实体 第2批: 显示 - >来自DB的所有实体 第3批: 显示 - >来自DB的所有实体
$qry = mysql_query("SELECT *,sum(counter) FROM table_name GROUP BY batch") or die("ERROR: ".mysql_error());
if(!empty($qry))
{
while($row = mysql_fetch_array($qry))
{
for($b=1;$b<=$row['sum(counter)'];$b++){
echo $b;
}
}
echo "<hr>";
echo "<div><input type='submit' name='submitBtn' value='submit'></div>";
}else{
echo "No data";
}
?>
我能够获得注册用户的数量[s],但问题出在我的while循环中(我认为).. 我得到的结果是 第1批: 1,2-(正确) 第2批: 1(应为3) 第3批: 1,2(应为4,5)
任何帮助将不胜感激。
答案 0 :(得分:0)
while($row = mysql_fetch_array($qry))
{
for($b=1;$b<=$row['sum(counter)'];$b++){
在你的循环中,你不断重置$ b = 1.
尝试在while循环之前定义$ b = 1.
答案 1 :(得分:0)
您的for
循环没有意义。它只是从1到从sum(counter)
检索到的数字。您想要的是实际用户,因此您需要从结果中获取他们的ID或其他内容。另外,我强烈建议您使用sum(counter)
列的别名。