 |
สวัสดีครับ รบกวนขอแนวทางการออกรายงานรายวันหน่อยครับ มันแสดงผมออกมายาวเลยครับ อยากตัดให้มันเป็นขึ้นแถวละเดือนได้ไหมครับ |
|
 |
|
|
 |
 |
|
ตัวอย่าง Example ครับ
Code (PHP)
$arr=array('2018-05-11','2018-05-12','2018-07-11','2018-02-11'); // แทนฐานข้อมูล orderby group
for($i=0;$i<count($arr);$i++) // แทน Loop while
{
$exp_m=explode('-',$arr[$i]); // ตัดค่าจาก - ทำเป็น array
$month=intval($exp_m[1]); // แปลงค่า array แหน่งที่ 1 เป็นตัวเลข
if($month != $arr_m[$i-1]){ //เมื่อ array ล่าสุดไม่เท่ากับ $arr_m ที่เก็บตัวสุดท้าย
echo "<table border='1'><tr><td> date";
}
echo "<tr><td>".$arr[$i]."</td></tr>";
if($month == $arr_m[$i-1]){
echo "</table>";
}
$arr_m[]=$month; // เก็บค่า เดือนล่าสุดไว้เพื่อเช็ค array
}
หรือถ้าคุณมี template design ใส่ division responsive เข้าไปก็ได้ครับ
|
ประวัติการแก้ไข 2018-01-06 11:15:23
 |
 |
 |
 |
Date :
2018-01-06 11:00:27 |
By :
dudesaranyu |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (PHP)
$rs_detail=$db->query('select field_date, sum(...) from detail where .... group by field_date');
$old_year_month = '';
while($rs_detail as $ro){
if(substr($ro['field_date'], 0,7)>$old_year_month){
if($old_year_month>''){
echo '</table><div>'; // close table
}
echo '<div class=""><table class="">'; // open new div / table
$old_year_month=substr($ro['field_date'], 0,7);
}
echo '<tr><td>data</td></tr>'; // detail data
}
echo '</table><div>'; // close table
ใส่ class กำหนด layout และ อื่นๆ ที่จำเป็น เอาเองนะครับ
|
ประวัติการแก้ไข 2018-01-06 11:30:01
 |
 |
 |
 |
Date :
2018-01-06 11:27:28 |
By :
Chaidhanan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณครับพี่ DÜd€ :3 , Chaidhanan ขอลดลองทำก่อนครับ
|
 |
 |
 |
 |
Date :
2018-01-08 09:37:32 |
By :
2038092003078642 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|

|
 |
 |
 |
 |
Date :
2018-01-08 19:53:06 |
By :
mr.win |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|