将MYSQL结果分离为单独的HTML表

时间:2016-12-13 18:56:54

标签: php mysql

我有以下内容,我试图在每个组之后制作单独的HTML表格:

$query = "SELECT * FROM NonBillableTime WHERE TimeIn LIKE '$MondayP2%' ORDER BY CreatedUser ASC";
$members = mysql_query($query) or die($query."<br/><br/>".mysql_error());
while ($row = mysql_fetch_assoc($members)) {

示例 HTML表1将返回CreatedUser编号为5的所有内容 然后表格结束,新表格将开始并返回CreatedUser编号为6的所有内容。

我面临两个问题: -

  1. 我不知道自改变以来有多少用户。
  2. 需要从while ($row = mysql_fetch_assoc($members)) {执行,因为我正在进行其他计算
  3. 是的我想使用MYSQL,并且知道添加注入预防

    enter image description here

1 个答案:

答案 0 :(得分:2)

在这里保持代码非常通用,但可能你现在正在做这样的事情:

// output a table header
while ($row = mysql_fetch_assoc($members)) {
    // output a table row
}
// output a table footer

如果要在该循环中定期开始新表,则需要添加条件以确定何时执行此操作。所以结构更像是这样:

$currentUser = 1;
// output a table header
while ($row = mysql_fetch_assoc($members)) {
    // output a table row
    if ($row["CurrentUser"] != $currentUser) {
        // output a table footer
        // output a table header
        $currentUser = $row["CurrentUser"];
    }
}
// output a table footer

这是非常不合适的,所以在这里可能存在一个逻辑错误,即在某些条件下或某种性质的东西中显示部分表格。但希望这个想法的要点正在传达。基本上在循环中,您可以根据条件关闭并重新打开表格(将您拥有的数据中的任何信息放入这些页眉/页脚)。您只需跟踪在该条件下使用的数据。在这种情况下,结果的“当前”CurrentUser值。