Php 如何创建MySQL无限数组表?

Php 如何创建MySQL无限数组表?,php,mysql,html-table,infinite-loop,infinite,Php,Mysql,Html Table,Infinite Loop,Infinite,我使用这段代码为我的mysql查询创建一个无限表: <table cellspacing='0'> <!-- cellspacing='0' is important, must stay --> <!-- Table Header --> <thead> <tr> <th>User</th> <th>SteamID&l

我使用这段代码为我的mysql查询创建一个无限表:

<table cellspacing='0'> <!-- cellspacing='0' is important, must stay -->

    <!-- Table Header -->
    <thead>
        <tr>
            <th>User</th>
            <th>SteamID</th>
            <th>Banned by</th>
            <th>Admin SteamID</th>
            <th>Time Banned (min)</th>
            <th>Reason</th>
        </tr>
    </thead>
    <!-- Table Header -->

    <!-- Table Body -->
    <tbody>
<?php

echo '<tr>';

for($i = 0; $bans = mysqli_fetch_array($query2); $i = ($i+1)%3){
    echo '<td>'.$bans['name'].'</td>';
    echo '<td>'.$bans['steamid'].'</td>';
    echo '<td>'.$bans['nameAdmin'].'</td>';
    echo '<td>'.$bans['steamidAdmin'].'</td>';
    echo '<td>'.$bans['time'].'</td>';
    echo '<td>'.$bans['reason'].'</td>';
    if($i == 2)
        echo '</tr><tr>';
}

echo '</tr>';

?>

</tbody>

使用者
蒸汽
被禁止
管理员蒸汽ID
禁止时间(分钟)
理由
我从你那里得到了密码

它工作正常,只是不能正确地向下移动超过6行。其他行出于任何原因被放置在我最后一列的右侧,如本屏幕截图所示:


我怎样才能解决这个问题?我的代码有问题吗?为什么会发生这种情况?

按照说明使用while循环。比如说:

$result = $conn->query($sql);

while($bans = $result->fetch_assoc()) {
    echo '<td>'.$bans['name'].'</td>';
    echo '<td>'.$bans['steamid'].'</td>';
    echo '<td>'.$bans['nameAdmin'].'</td>';
}
$result=$conn->query($sql);
而($bans=$result->fetch_assoc()){
回显'.$bans['name'].';
回音“.$bans['steamid']”;
回显'.$bans['nameAdmin'].';
}

您正在制作两列

您的代码将每隔两组数据打印出表行的末尾:

if($i == 2)
    echo '</tr><tr>';
if($i==2)
回声';

它应该是
echo'

好吧,你的循环毫无意义。使用
$i
注入新行(就像这里所做的那样)是没有必要的;您可以在每一行上循环,然后将其作为一行输出:

<table>
    <!-- <thead>...</thead> -->
    <tbody>
<?php while ($bans = mysqli_fetch_array($query2)): ?>
        <tr>
            <td><?php echo $bans['name'] ?></td>
            <td><?php echo $bans['steamid'] ?></td>
            <td><?php echo $bans['nameAdmin'] ?></td>
            <td><?php echo $bans['steamidAdmin'] ?></td>
            <td><?php echo $bans['time'] ?></td>
            <td><?php echo $bans['reason'] ?></td>
        </tr>
<?php endwhile ?>
    </tbody>
</table>


而(true)回显“永无止境”你所说的“无限表”是什么意思?当你这么说的时候,我脑海中会触发一个无限循环,你为什么要这样做?我的意思是,表中的行数将与我从中选择的数据库表中的行数相同。这是在这里发现的概念:你的一个用户因为是同性恋而被开除了@不,那是测试禁令。我不是恐同症,谢谢!粘贴后效果非常好!(尽管您将$band而不是$bans放在了一起)