2017-07-31 69 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