2017-07-31 68 views
0
$MR = $mt->query('select dated, time1 from det where cus="name 10" and dated between "10-06-2017" and "20-06-2017" order by dated asc'); 
$MR -> execute(); 
$result = $MR -> fetchAll(); 

$i=1; 
if ($i%2) { 
      echo "<tr>"; 
       echo "<td style='width:20%'>"; 
        echo $i; 
       echo "</td>"; 
       echo "<td style='width:20%'>"; 
        echo $row['dated']; 
       echo "</td>"; 
       echo "<td></td>"; 
       echo "<td style='width:20%'>"; 
        echo $row['time1']; 
       echo "</td>"; 

      echo "</tr>"; 

     } else { 
      echo "<tr>"; 
       echo "<td style='width:20%'>"; 
        echo $i; 
       echo "</td>"; 
       echo "<td style='width:20%'>"; 
        echo $row['dated']; 
       echo "</td>"; 
       echo "<td style='width:20%'>"; 
        echo $row['time1']; 
       echo "</td>"; 
       echo "<td></td>"; 
      echo "</tr>"; 

     } 


     $i++; 
    } 

我沒有使用PDO一個使用fetchall(),並做了$ I%2其中$ i是計數器後,我的表看起來像下面。顯示下一行相鄰​​不分頁

+---------+----------+-------------+------------+ 
| no  | date  | time 1  | time 2  | 
+---------+----------+-------------+------------+ 
+---------+----------+-------------+------------+ 
| 1  |12-06-2017| 05:00  |   | 
+---------+----------+-------------+------------+ 
+---------+----------+-------------+------------+ 
|   |12-06-2017|    | 11:35  | 
+---------+----------+-------------+------------+ 
+---------+----------+-------------+------------+ 
| 3  |13-06-2017| 04:4  |   | 
+---------+----------+-------------+------------+ 
+---------+----------+-------------+------------+ 
|   |13-06-2017|    | 13:25  | 
+---------+----------+-------------+------------+ 

如何獲得相鄰11:3505:00,同樣對其他行的值。有超過100行。我可以顯示time1的下一個記錄嗎?

分頁不是我正在尋找的東西。

[更新]

期望輸出

+---------+----------+-------------+------------+ 
| no  | date  | time 1  | time 2  | 
+---------+----------+-------------+------------+ 
+---------+----------+-------------+------------+ 
| 1  |12-06-2017| 05:00  | 11:35  | 
+---------+----------+-------------+------------+ 
+---------+----------+-------------+------------+ 
| 2  |13-06-2017| 04:4  | 13:25  | 
+---------+----------+-------------+------------+ 
+0

這裏後您的預計O/P。 –

+0

@BibhudattaSahoo Pls check updated Q – X10nD

+0

顯示用於迭代和打印實際輸出的代碼。 – Saleiro

回答

1

嘗試這樣

select dated, 
Group_concat(time1 separator ',') as time1 
from det 
where 
cus="name 10" and 
dated between "10-06-2017" and "20-06-2017" 
group by dated 
order by dated asc 

它會給出把儘可能

dated  | time1 
12-06-2017 | 05:00,11:35 

編輯: -
使用這個代碼來創建錶行

$times=explode(',', $row['time1']); 
$time1=(isset($times[0]))?$times[0]:''; 
$time2=(isset($times[1]))?$times[1]:''; 
echo "<tr>"; 
echo "<td style='width:20%'>"; 
echo $i; 
echo "</td>"; 
echo "<td style='width:20%'>"; 
echo $row['dated']; 
echo "</td>"; 
echo "<td></td>"; 
echo "<td style='width:20%'>"; 
echo $row['time1']; 
echo "</td>"; 
+0

@ X10nD試試以上答案。 –

+0

現在看看它 – X10nD

+0

解析錯誤:語法錯誤,意外''d1.dated = d2.dated 對不起,有點困惑,但你從哪裏得到time2? – X10nD