รายละเอียดของการตอบ ::
ใช่ครับพี่ ผมกำลังลองทำอยู่ดึงข้อมูลหลัก 100 เร็คคอร์ดก็สบาย แต่พอตอนดึงข้อมูลมาแสดง สถานะที่เราเก็บเป็น int เช่น
สถานะ 1=อยู่ระหว่างดำเนินการ
สถานะ 2=ดำเนินการแล้ว
สถานะ 3=ยังไม่ดำเนินการ
พอดึงข้อมูลแล้วมันออกมาเป็นตัวเลขเลย ตรงนี้เราจะเขียนเงื่อนไขยังไงครับ (Code ตามนี้นะครับ)
Server-side : Code
$request = 1;
if(isset($_POST['request'])){
$request = $_POST['request'];
}
// DataTable data
if($request == 1){
## Read value
$draw = $_POST['draw'];
$row = $_POST['start'];
$rowperpage = $_POST['length']; // Rows display per page
$columnIndex = $_POST['order'][0]['column']; // Column index
$columnName = $_POST['columns'][$columnIndex]['data']; // Column name
$columnSortOrder = $_POST['order'][0]['dir']; // asc or desc
$searchValue = mysqli_escape_string($connect,$_POST['search']['value']); // Search value
## Search
$searchQuery = " ";
if($searchValue != ''){
$searchQuery = " and (LINE_NAME like '%".$searchValue."%' or
LINE_SITE like '%".$searchValue."%' or
LINE_START like '%".$searchValue."%' or
PO_OFFICER like '%".$searchValue."%' or
STATUS_AVAILBLE like'%".$searchValue."%' ) ";
}
## Total number of records without filtering
$sel = mysqli_query($connect,"select count(*) as allcount from table_list_line");
$records = mysqli_fetch_assoc($sel);
$totalRecords = $records['allcount'];
## Total number of records with filtering
$sel = mysqli_query($connect,"select count(*) as allcount from table_list_line WHERE 1 ".$searchQuery);
$records = mysqli_fetch_assoc($sel);
$totalRecordwithFilter = $records['allcount'];
## Fetch records
$empQuery = "select * from table_list_line WHERE 1 ".$searchQuery." order by ".$columnName." ".$columnSortOrder." limit ".$row.",".$rowperpage;
$empRecords = mysqli_query($connect, $empQuery);
$data = array();
while ($row = mysqli_fetch_assoc($empRecords)) {
// Update Button
$updateButton = "<button type='button' class='btn btn-warning btn-sm Edt_form' name='Edt_form' data-id='".$row['ID']."' data-toggle='modal' data-target='#Edt_form' >
<i class='fa fa-edit'></i></button>";
// Delete Button
$deleteButton = "<button type='button' class='btn btn-danger btn-sm Del_form' name='Del_form' data-id='".$row['ID']."'><i class='fa fa-trash'></i></button>";
$action = $updateButton." ".$deleteButton;
$STATUS_AVAILBLE = $row["STATUS_AVAILBLE"];
//
if($row["STATUS_AVAILBLE"]==='1'){
$STATUS_AVAILBLE = '<span class="badge badge-pill badge-warning">อยู่ระหว่างดำเนินการ</span>';
}else if($row["STATUS_AVAILBLE"]=='2'){
$STATUS_AVAILBLE = '<span class="badge badge-pill badge-success">ดำเนินการแล้ว</span>';
}else{
$STATUS_AVAILBLE = '<span class="badge badge-pill badge-danger">ยังไม่ดำเนินการ</span>';
}
$data[] = array(
"LINE_ID" => $row['LINE_ID'],
"LINE_SITE" => $row['LINE_SITE'],
"LINE_NAME" => $row['LINE_NAME'],
"LINE_START" => $row['LINE_START'],
"LINE_FRIEND" => $row['LINE_FRIEND'],
"LINE_PHONE" => $row['LINE_PHONE'],
"STATUS_AVAILBLE" => $row['STATUS_AVAILBLE'],
"PO_OFFICER" => $row['PO_OFFICER'],
"NOTE" => $row['NOTE'],
"action" => $action
);
}
## Response
$response = array(
"draw" => intval($draw),
"iTotalRecords" => $totalRecords,
"iTotalDisplayRecords" => $totalRecordwithFilter,
"aaData" => $data
);
echo json_encode($response);
exit;
}
และส่วนนี้เป็น Code Datatable ปกติ
if($_GET['p']=='Show_data'){
$html='
<thead>
<tr style="text-align:center;" class="table-primary">
<th>NO.</th>
<th>ชื่อเว็บไซต์</th>
<th>ชื่อไลน์</th>
<th>ชื่อไลน์เเอด</th>
<th>ยอดติดตาม</th>
<th>เบอร์โทร</th>
<th>สถานะ</th>
<th>ผู้รับผิดชอบ</th>
<th>หมายเหตุ</th>
<th><i class="fa fa-cog"></i></th>
</tr>
</thead>
';
$query ="SELECT ID,LINE_ID,LINE_NAME,LINE_START,LINE_SITE,LINE_FRIEND,LINE_PHONE,PO_OFFICER,NOTE,STATUS_AVAILBLE FROM table_list_line";
//$result = mysqli_query($connect,$query);
if($result=mysqli_query($connect,$query)){
while($row = mysqli_fetch_assoc($result)){
$ID = $row["ID"];
$LINE_ID = $row["LINE_ID"];
$LINE_NAME = $row["LINE_NAME"];
$LINE_SITE = $row["LINE_SITE"];
$LINE_START = $row["LINE_START"];
$LINE_PHONE = $row["LINE_PHONE"];
$PO_OFFICER = $row["PO_OFFICER"];
$NOTE = $row["NOTE"];
$LINE_FRIEND = number_format($row["LINE_FRIEND"]);
//
if($row["STATUS_AVAILBLE"]==='1'){
$STATUS_AVAILBLE = '<span class="badge badge-pill badge-warning">อยู่ระหว่างดำเนินการ</span>';
}else if($row["STATUS_AVAILBLE"]=='2'){
$STATUS_AVAILBLE = '<span class="badge badge-pill badge-success">ดำเนินการแล้ว</span>';
}else{
$STATUS_AVAILBLE = '<span class="badge badge-pill badge-danger">ยังไม่ดำเนินการ</span>';
}
$html.='
<tr>
<td style="text-align:center;">'.$LINE_ID.'</td>
<td>'.$LINE_SITE.'</td>
<td>'.$LINE_NAME.'</td>
<td>'.$LINE_START.'</td>
<td style="text-align:center;">'.$LINE_FRIEND.'</td>
<td style="text-align:center;">'.$LINE_PHONE.'</td>
<td style="text-align:center;">'.$STATUS_AVAILBLE.'</td>
<td style="text-align:center;">'.$PO_OFFICER.'</td>
<td style="text-align:center;">'.$NOTE.'</td>
<td style="text-align:center;">
<button type="button" class="btn btn-warning btn-xs Edt_form" name="Edt_form" id="'.$ID.'|'.$LINE_ID.'">
<i class="fa fa-edit"></i>
</button>
<button type="button" class="btn btn-danger btn-xs Del_form" name="Del_form" id="'.$ID.'|'.$LINE_ID.'">
<i class="fa fa-trash"></i>
</button>
</td>
</tr>
';
}
}
mysqli_close($connect);
echo $html;