php中使用表从MySQL中按日期分隔的数据
这来自PhpMyadmin数据: 这些就是代码php中使用表从MySQL中按日期分隔的数据,php,mysql,database,html-table,Php,Mysql,Database,Html Table,这来自PhpMyadmin数据: 这些就是代码 <table class="table table-bordered"> <thead> <tr><th>Sn</th><th>Status</th> <th>Location</th> <th>Time</th></tr> </thead> <tbody>
<table class="table table-bordered">
<thead>
<tr><th>Sn</th><th>Status</th> <th>Location</th> <th>Time</th></tr>
</thead>
<tbody>
<?php
$i=0;
$query2 = "SELECT * FROM tbl_statustimeline WHERE cons_no = '$cons_no' ORDER BY date DESC";
$results2 = $mysqli->query($query2);
if($results2){
while($row2 = $results2->fetch_assoc()) {
$i++;
?>
<tr>
<td colspan='4'><?php echo $row2['date']; ?></td>
</tr>
<tr>
<td><?php echo $i; ?></td>
<td><?php echo $row2['status']; ?> - <?php echo $row2['Location']; ?></td>
<td><?php echo $row2['address']; ?></td>
<td><?php echo $row2['time']; ?></td>
</tr>
<?php
}
}
?>
</tbody>
</table>
状态定位时间
-
因此,我需要2016-07-12、2016-07-15、2016-07-19等日期与这些信息分开显示。如果您希望获得与DHL跟踪系统相同的结果,您有两种变体:
1) SELECT * FROM table ORDER BY TIMESTAMP(date_column,time_column) DESC
然后在脚本中检查当前行中的日期是否与前一行中的日期不同-此时必须显示日期分隔符
2) SELECT DISTINCT date_column FROM table
首先收集上述查询所需的所有日期,然后对于每个日期,必须显示日期分隔符并发出另一个SQL查询
SELECT * FROM table WHERE date_column = Your_Currently_Enumerated_Date ORDER BY time_column DESC
要获取时间及其状态如果您希望获得与DHL跟踪系统相同的结果,您有两种变体:
1) SELECT * FROM table ORDER BY TIMESTAMP(date_column,time_column) DESC
<table class="table table-bordered">
<thead>
<tr><th>Sn</th><th>Status</th> <th>Location</th> <th>Time</th></tr>
</thead>
<tbody>
<?php
$i=0;
$cons_no=$row["cons_no"];
$query2 = "SELECT * FROM tbl_statustimeline WHERE cons_no = '$cons_no' ORDER BY date DESC";
$results2 = $mysqli->query($query2);
if($results2){
$currentDate = false;
while($row2 = $results2->fetch_assoc()) {
$i++;
if ($row2['date'] != $currentDate){
?>
<tr>
<td colspan='4'><?php echo $row2['date']; ?></td>
</tr>
<?php $currentDate = $row2['date'];
}
?>
<tr>
<td><?php echo $i; ?></td>
<td><?php echo $row2['status']; ?> - <?php echo $row2['Location']; ?></td>
<td><?php echo $row2['address']; ?></td>
<td><?php echo $row2['time']; ?></td>
</tr>
<?php
}
}
?>
</tbody>
</table>
然后在脚本中检查当前行中的日期是否与前一行中的日期不同-此时必须显示日期分隔符
2) SELECT DISTINCT date_column FROM table
首先收集上述查询所需的所有日期,然后对于每个日期,必须显示日期分隔符并发出另一个SQL查询
SELECT * FROM table WHERE date_column = Your_Currently_Enumerated_Date ORDER BY time_column DESC
获取时间及其状态
<table class="table table-bordered">
<thead>
<tr><th>Sn</th><th>Status</th> <th>Location</th> <th>Time</th></tr>
</thead>
<tbody>
<?php
$i=0;
$cons_no=$row["cons_no"];
$query2 = "SELECT * FROM tbl_statustimeline WHERE cons_no = '$cons_no' ORDER BY date DESC";
$results2 = $mysqli->query($query2);
if($results2){
$currentDate = false;
while($row2 = $results2->fetch_assoc()) {
$i++;
if ($row2['date'] != $currentDate){
?>
<tr>
<td colspan='4'><?php echo $row2['date']; ?></td>
</tr>
<?php $currentDate = $row2['date'];
}
?>
<tr>
<td><?php echo $i; ?></td>
<td><?php echo $row2['status']; ?> - <?php echo $row2['Location']; ?></td>
<td><?php echo $row2['address']; ?></td>
<td><?php echo $row2['time']; ?></td>
</tr>
<?php
}
}
?>
</tbody>
</table>
状态定位时间
状态定位时间
添加您想要的数据方式?数据将按日期分开。日期将显示每个日期的每一行。此时,其他状态将显示其他行。您可以检查DHL跟踪系统,以了解如何使用此跟踪号码显示其状态:9699662545。感谢您询问您想要什么样的数据?数据将按日期分开。日期将显示每个日期的每一行。此时,其他状态将显示其他行。您可以检查DHL跟踪系统,以了解如何使用此跟踪号码显示其状态:9699662545。谢谢Hanks IVO GELOV,我找到了我的解决方案。如果我的答案对你有帮助,你愿意投赞成票吗?如果没有-好吧,也许下次:))谢谢伊沃·盖洛夫,我找到了我的解决办法。如果我的答案对你有帮助,你愿意投赞成票吗?如果没有-好吧,也许下次:))