รบกวนสอบถามเรื่องการจัดกลุ่มข้อมูล ประเภทเดียวกัน ในรูปแบบ ตารางด้วย Mysql ครับ
มันน่าจะมีคอลัมน์กลุ่มคดีด้วย เพื่อให้มัน query order ตามกลุ่ม
สมมุติจากภาพก็จะแบ่งเป็น 3 กลุ่มคดี กลุ่มแรกสีแดง กลุ่มสองกับสามเป็นทำร้ายกับก่อการร้าย
เวลาquery ก็ ORDER BY กลุ่มคดี ASC
แล้วเวลาลูปแสดงผลก็เอา if มาช่วยในการเขียนเปิด-ปิด tr
Code (PHP)
$caseGroup = '';
while() {
if (empty($caseGroup)) {
// ถ้าไม่มีกลุ่มคดีของเก่า (เพิ่มเริ่ม loop) ให้กำหนดของปัจจุบันคือของเก่า
$caseGroup = $row['case_group'];
}
if (!empty($caseGroup) && $row['case_group'] != $caseGroup) {
// ถ้ากลุ่มคดีปัจจุบันไม่ตรงกับก่อนหน้า ให้ปิด-เปิด tr ใหม่
}
$caseGroup = $row['case_group'];
}
ประมาณนี้
Date :
2021-08-21 17:14:09
By :
mr.v
Code (PHP)
while($row = $result->fetch_assoc()){ // วนลูปแสดงรายการ
$num++;
if($row["type_arrest"]=="1"){
$type_arrest_result="จับกุมซึ่งหน้า";
}else{
$type_arrest_result="จับกุมตามหมายจับ";
}
/////////แสดงผล ปี พศ 2021-10-22
$covert=$row['date_catch'];
$con_newday=substr($covert,8,2);
$con_newmonth=substr($covert,5,-3);
$con_newyear=substr($covert,0,-6)+543;
$con_newdate=$con_newday.'-'.$con_newmonth.'-'.$con_newyear;
///////////////
?>
<tr>
<td><div align="center"><?=($step_num*$e_page)+$num?></div></td>
<td width="120px"><div align="left"><?php echo $con_newdate;?></div></td>
<td><div align="left">
<?=$row["name_title"].$row["criminal_fname"]." ".$row["criminal_lname"];?>
</div></td>
<td width="auto"><div align="center"><?php echo $row["age"];?> ปี</div></td>
<td><div align="left"><?php echo $row["gender"];?></div></td>
<td><div align="left"><?php echo $row["id_card"];?></div></td>
<td width="10%" align="left" ><?php echo 'เลขที่'." ".$row["address_num"]." ".'หมู่'." ".$row["vilage"]." ".'ซ.'." ".$row["soi_num"]." ".'ถ.'." ".$row["road"]." ".'ต.'." ".$row["tumbol"]." ".'อ.'." ".$row["aumphur"]." ".'จ.'." ".$row["province"];?>
</td>
</tr>
} ?>
เราจะวาง IF ยังไงครับ แล้ว While loop 555 ผมนึกอังกอริทึมไม่ออกครับ
Code (PHP)
$sql="xxxx";//สร้าง Statement เพิ่มภายใต้ While หลัก
$query=mysqli_query(x,x);
if(crimeref_id=='เหมือนกัน N แถว')//ตรงนี้แหละนึกไม่ออกจะเช็คตัวแปรไหนยังไง
while($result=mysqli_fetch_array($query)){
echo '<td>'.$result["name_title"].$result["criminal_fname"]." ".$result["criminal_lname"].'</td>';
}else{
echo '<td>'.$row["name_title"].$row["criminal_fname"]." ".$row["criminal_lname"].'</td>';
}
คิดออกแค่นี้ครับ
Date :
2021-08-21 18:24:07
By :
gmgo
ดูตัวอย่างที่ผมเขียนไว้แล้ว
อันแรกตัวแปรสำหรับเช็คกลุ่ม กำหนดค่าว่างไปก่อน
ในลูป ถ้าไม่มีค่าคือว่างๆแปลว่าเพิ่งเริ่ม ให้กำหนดของเก่าเท่ากับของรอบปัจจุบัน
แล้วก็แสดงผล
แล้วก็ใส่เงื่อนไขว่าถ้าตัวแปรกลุ่มไม่ตรงกับกลุ่มของรอบปัจจุบัน ให้ปิด tr
แล้วก็กำหนดตัวแปรกลุ่มเป็นของรอบปัจจุบันอีกทีโดยไม่มีเงื่อนไขคลุม เพื่อให้รอบต่อไปใช้ตรวจสอบได้
Code (PHP)
$caseGroup = '';
while() {
if (empty($caseGroup)) {
// ถ้าไม่มีกลุ่มคดีของเก่า (เพิ่มเริ่ม loop) ให้กำหนดของปัจจุบันคือของเก่า
$caseGroup = $row['case_group'];
}
// แสดงผล
if (!empty($caseGroup) && $row['case_group'] != $caseGroup) {
// ถ้ากลุ่มคดีปัจจุบันไม่ตรงกับก่อนหน้า ให้ปิด-เปิด tr ใหม่
}
$caseGroup = $row['case_group'];
}
Date :
2021-08-21 21:32:19
By :
mr.v
Load balance : Server 05