php - 迭代查询并将数字分组

标签 php html mysql loops

我正在为游戏编写脚本。它应该迭代查询并打印数字组。每组有9个数字。例如,如果 mysql_num_rows($sql_pp); 返回 16,则所有内容应如下所示:

  1. 1、2、3、4、5、6、7、8、9。
  2. 10、11、12、13、14、15、16。
<小时/>

我的代码:

<?php
ob_start();
session_start();
Header("Content-Type: text/html;charset=UTF-8");
require_once($_SERVER['DOCUMENT_ROOT']."/data/conn_file.php");

$login = $_SESSION['login'];
$laukai = mysql_query("SELECT tb_pole.num, tb_pole.type, tb_pole.time AS tb_pole_time,
    tb_time.time AS tb_time_time FROM `tb_pole` JOIN tb_time ON tb_pole.type =
    tb_time.type WHERE `username` = '$login' ORDER BY tb_pole.time");
$sql_pp = mysql_query("SELECT * FROM `tb_pole` WHERE `username` = '$login'") or
    die(mysql_error());
$kol_pole = mysql_num_rows($sql_pp);
$koll = $kol_pole / 9;

if ($kol_pole <= 8) {
    $kl = 1;
} else {
    $kl = 1;
    while ($kl <= $koll) {
        $kl++;
    }
}
?>
<table>
<?php
if (mysql_num_rows($laukai) > 0) {
    for ($i = 1; $i<=$kl; $i++) {
        while ($row = mysql_fetch_assoc($laukai))  {
?>
            <tr>
                <td><?php echo $i; ?></td>
                <td><?php echo $row['num']; ?></td>
            </tr>
    <?php
        }
    }
}
?>
<小时/>

它显示:enter image description here

如您所见,最后一行是1 | 10. .应该是 2 | 10(因为数字 10 在组 2 中)(使用“inspect element”从 1 更改为 2) enter image description here

<小时/>

当我的变量 $i 不在 while 循环中时,我使用了这些代码行:

<div id="tabs_pole">
<ul>
<?php
    for($i = 1; $i <= $kl; $i++) {
?>
        <li><a href="#pole<?=$i; ?>"><span><?=$i; ?></span></a></li>
<?php
    }
?>
</ul>
</div>

一切正常:enter image description here 。 如何使用 while 循环实现这一点?

最佳答案

我找到了解决方案:)谢谢大家的帮助:)

switch (true) {
case ($row['num'] <= 9):
    $i = 1;
    break;
case ($row['num'] <= 9 * 2):
    $i = 2;
    break;
case ($row['num'] <= 9 * 3):
    $i = 3;
    break;
case ($row['num'] <= 9 * 4):
    $i = 4;
    break;
case ($row['num'] <= 9 * 5):
    $i = 5;
    break;
case ($row['num'] <= 9 * 6):
    $i = 6;
    break;
case ($row['num'] <= 9 * 7):
    $i = 7;
    break;
case ($row['num'] <= 9 * 8):
    $i = 8;
    break;
}       

关于php - 迭代查询并将数字分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44217727/

相关文章:

mysql - SQL:选择两个不同的事物并在一个查询中对结果进行计算

如果知道最大 ID,MySQL 计算 int 大小

javascript - 使用鼠标位置绘制圆

php - mysql创建表问题

php - http POST 和 http GET 之间的澄清

php - 将 CodeIgniter 错误的表单写入数据库时​​出错

用于 HTML5 视频播放的 jQuery 插件?

html - .htm 或 .html 扩展名 - 哪个是正确的,有什么不同?

php - 多个密码登录 : Good OR Bad

php - php三元运算符只有 'return'是真还是假?