2016-08-01 2 views
0

사용 MySQL은 PHP가 날짜별로 구분 : enter image description here데이터는이 데이터에 phpMyAdmin 내지 표

를 그 코드이다.

<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년 7월 12일, 2016년 7월 15일, 2016년 7월 19일 등 같은 그 일을해야합니다.

1) SELECT * FROM table ORDER BY TIMESTAMP(date_column,time_column) DESC 

다음 스크립트 검사에서 현재 행에있는 날짜가의 날짜 다른 경우 : 당신이 DHL 추적 시스템과 동일한 결과를 달성하려면

+0

어떻게 추가 하시겠습니까? –

+0

데이터는 날짜별로 분리됩니다. 날짜에는 모든 날짜에 대한 모든 단일 행이 표시됩니다. 그때 다른 상태는 다른 행을 보여줄 것입니다. DHL 추적 시스템을 확인하면이 추적 번호로 상태를 표시하는 방법을 알 수 있습니다. 9699662545 http://www.dhl.com.bd/en/express/tracking.html . 감사합니다 –

답변

0
<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> 

이 그림과 비슷합니다. enter image description here

1

, 당신은이 변종이 이전 행 - 날짜 구분 기호를 표시해야하는 순간입니다.

2) SELECT DISTINCT date_column FROM table 

먼저 위의 쿼리에 필요한 모든 날짜를 수집하는 경우, 그 날짜의 각각에 대해 당신은 시간을 얻을 수있는 또 다른 SQL 쿼리

SELECT * FROM table WHERE date_column = Your_Currently_Enumerated_Date ORDER BY time_column DESC 

를 날짜 구분 기호를 표시하고 발행해야하고 그들의 지위는

+0

답장을 보내 주셔서 감사합니다. 나는 이것을 확인하고있다. –

+0

감사의 말 IVO GELOV, 내 해결책을 찾았습니다. –

+0

내 대답이 도움이된다면, 투표 하시겠습니까? 그렇지 않다면, 아마도 다음에 :))))) –