|
|
|
ต้องการใช้เงื่อนไข วันที่ระหว่างกับ Datatable (DateBetween) ทำอย่างไรครับ |
|
|
|
|
|
|
|
SeverSide
<?php
require('../../connect.php');
$table = 'record';
$primaryKey = 'id';
// รับค่า ID จาก admin.php
if(isset($_GET['term'])){
$term = mysqli_real_escape_string($con, $_GET['term']);
} else {
$term = '';
}
if(isset($_GET['dp'])){
$dp = mysqli_real_escape_string($con, $_GET['dp']);
} else {
$dp = '';
}
if(isset($_GET['startdate'])){
$startdate = mysqli_real_escape_string($con, $_GET['startdate']);
} else {
$startdate = '';
}
if(isset($_GET['enddate'])){
$enddate = mysqli_real_escape_string($con, $_GET['enddate']);
} else {
$enddate = '';
}
$columns = array(
array( 'db' => 'id', 'dt' => 0 ),
array( 'db' => 'classroom', 'dt' => 1 ),
array( 'db' => 'period', 'dt' => 2 ),
array( 'db' => 'subject', 'dt' => 3 ),
array( 'db' => 'teacher', 'dt' => 4 ),
array( 'db' => 's-all', 'dt' => 5 ),
array( 'db' => 's-in', 'dt' => 6 ),
array(
'db' => 'img',
'dt' => 7,
'formatter' => function( $d, $row ) {
return '
<img src="upload/lfh/'.$d.'" width="300">';
}),
array(
'db' => 'id',
'dt' => 8,
'formatter' => function( $d, $row ) {
return '
<button type="button" class="btn btn-sm btn-danger" data-toggle="modal" data-target="#DeleteR" data-whatever="'.$d.'"> <i class="fas fa-trash"></i> ลบ </button>';
})
);
$sql_details = array(
'user' => $user,
'pass' => $passwd,
'db' => $db,
'host' => $host
);
require( '../../datatable/ssp.class.php' );
// เงิ้อนไข
$t = "term = '$term'";
$sd = "startdate = '$startdate'";
$str = $t . ', ' . $sd;
$arr = explode(', ', $str);
$where = array_values(array_filter($arr, 'strlen'));
echo json_encode(
SSP::complex($_GET, $sql_details, $table, $primaryKey, $columns, $where)
);
?>
Tag : PHP
|
|
|
|
|
|
Date :
2021-07-01 22:54:49 |
By :
jgogo01 |
View :
888 |
Reply :
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
datatable ไม่ได้ถูกออกแบบมาให้รองรับ full query ตั้งแต่ต้น ต้องอาศัยการ modify, พึ่งตัวเสริม, หรือสร้างวิธีการเอง...ทางเลือก
1. เลิกใช้ datatable แต่ใช้เพียว bootstrap+sql
2. เลิกใช้ SSP class เพราะเป็นแค่ตัวอย่าง server-side processing แต่เขียนคลาสขึ้นมาเองเพื่อรองรับ complex query
3. แก้ไข SSP class โดยสร้างเมธอดใหม่สำหรับ between
4. ไม่แก้อะไรเลย แต่ลองส่งค่าเป็น string เช่น
Code (PHP)
$where = "$column BETWEEN $date1 AND $date2";
5. client-side processing + Rest API data source
ชอบแบบไหนลองเลือกดู
|
|
|
|
|
Date :
2021-07-02 16:37:26 |
By :
TheGreatGod_of_Death |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลืมอีกอัน ตัวเสริมที่ว่าชื่อ editor library ...ผมก็ไม่เคยใช้เหมือนกัน
|
|
|
|
|
Date :
2021-07-02 16:38:35 |
By :
TheGreatGod_of_Death |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|