为每个唯一ID获取多列mysql表,并使用PHP为每个唯一ID在HTML表的单行中回显结果

时间:2017-06-30 07:14:37

标签: php html mysql multiple-columns

我想为每个唯一ID获取多列mysql表,并在每个唯一id的HTML表的一行中回显结果。我从表中得到以下表单的结果..


userid |  date         |   status
------------------------------------
1      |   28-06-17    |   1
------------------------------------
1      |   29-06-17    |   2
------------------------------------
1      |   30-06-17    |   0
------------------------------------
2      |   28-06-17    |   1
------------------------------------
2      |   29-06-17    |   2
------------------------------------
2      |   30-06-17    |  3
------------------------------------

这是代码..只是一个从数据库中获取记录的基本php代码..

if($con)
{
$query="SELECT * FROM `usersDetail` WHERE userid='$_POST["user_id"]'";
$result=mysqli_query($con, $query); 

    while($rowusersDetail=mysqli_fetch_assoc($result))
    {


            echo $rowusersDetail['userid']."<br>";
            echo $rowusersDetail['date']."<br>";
            echo $rowusersDetail['status']."<br>";


    }
}

*我想要的是使用PHP生成html表来显示a的所有记录 特定用户分成一行..



userid |   28-06-17 | 29-06-17 | 30-06-17
_________________________________________
1      |         1  |         2|   0
_________________________________________
2      |         1  |         2|   3
_________________________________________

请帮助..谢谢

1 个答案:

答案 0 :(得分:0)

这可以在 foreach 循环的帮助下完成。

为此您需要一次检索所有数据,然后您可以根据您的要求操作数据。

你可以这样做

如果您的数据类似

cls

然后

$data=[['userid'=>1,'date'=>'21-03-2017','status'=>2],
['userid'=>2,'date'=>'21-03-2017','status'=>1],
['userid'=>1,'date'=>'22-03-2017','status'=>6],
['userid'=>2,'date'=>'22-03-2017','status'=>7],
['userid'=>1,'date'=>'24-03-2017','status'=>2],
['userid'=>2,'date'=>'24-03-2017','status'=>6]];

它将以“

”的形式发出

enter image description here

我觉得它对你有用。