datatable, get post with param class. where query working.
This commit is contained in:
+22
-10
@@ -6,7 +6,7 @@
|
||||
Desc. : v4 - HTML Table (jQuery & Bootstrap)
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : January 16th, 2008.
|
||||
Last Modified : October 16th, 2023.
|
||||
Last Modified : October 17th, 2023.
|
||||
|
||||
(c) 2008 - 2023, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
@@ -17,7 +17,9 @@ declare(strict_types=1);
|
||||
namespace siaupheng\fonia3\Web;
|
||||
|
||||
final class Table {
|
||||
private $__table = "";
|
||||
private $__ttable = "";
|
||||
private $__tfield = "";
|
||||
private $__twhere = "";
|
||||
private $__tquery = "";
|
||||
private $__tquery_footer = "";
|
||||
private $__aheader = [];
|
||||
@@ -44,14 +46,18 @@ final class Table {
|
||||
private $__tcss = "";
|
||||
private $__livedata = false;
|
||||
protected $__cdb = null;
|
||||
protected $__cpa = null;
|
||||
|
||||
public function __construct($db = null){
|
||||
if (is_resource($db)) { $this->__cdb = $db; }
|
||||
else { $this->__cdb = new \siaupheng\fonia3\DB\MySQL(); }
|
||||
$this->__cpa = new \siaupheng\fonia3\Web\Param();
|
||||
}
|
||||
|
||||
public function set_table($ttable = "") {
|
||||
$this->__table = $ttable;
|
||||
public function set_table($ttable = "", $tfield = "", $twhere = "") {
|
||||
$this->__ttable = $ttable;
|
||||
if ($tfield != "") $this->__tfield = $tfield;
|
||||
if ($twhere != "") $this->__twhere = $twhere;
|
||||
}
|
||||
|
||||
public function set_query($tquery = "") {
|
||||
@@ -227,10 +233,11 @@ final class Table {
|
||||
|
||||
public function db_table($nama_tabel = "tabel_", $baris_tabel = 10) {
|
||||
$this->__livedata = true;
|
||||
$id_draw = intval($_REQUEST['draw'] ?? 0);//
|
||||
$i_start = intval($_REQUEST['start'] ?? 0);//
|
||||
$i_length = intval($_REQUEST['length'] ?? 0);//
|
||||
$i_order = intval($_REQUEST['order'] ?? 0);//
|
||||
$this->prepare_query();
|
||||
$id_draw = intval($this->__cpa->Get("draw", 0));
|
||||
$i_start = intval($this->__cpa->Get("start", 0));
|
||||
$i_length = intval($this->__cpa->Get("length", 0));
|
||||
$i_order = intval($this->__cpa->Get("order", 0));
|
||||
|
||||
if ($id_draw > 0) {
|
||||
$t_order = "ASC";
|
||||
@@ -242,14 +249,14 @@ final class Table {
|
||||
$sql_order = ($this->__afield[$i_order]) ? " ORDER BY ".$this->__afield[$i_order]." ".$t_order : "";
|
||||
|
||||
$record = 0;
|
||||
$this->__cdb->Query("SELECT COUNT(*) Item FROM ".$this->__table);
|
||||
$this->__cdb->Query("SELECT COUNT(*) Item FROM ".$this->__ttable.$this->__twhere);
|
||||
if ($this->__cdb->Next()) $record = intval($this->__cdb->Row("Item", 0));
|
||||
$adata['draw'] = $id_draw;
|
||||
$adata['recordsTotal'] = $record;
|
||||
$adata['recordsFiltered'] = $record;
|
||||
|
||||
$adata['data'] = [];
|
||||
$this->__cdb->Query("SELECT `".implode('`,`', $this->__afield)."` FROM ".$this->__table.$sql_order.$sql_limit);
|
||||
$this->__cdb->Query("SELECT ".$this->__tfield." FROM ".$this->__ttable.$this->__twhere.$sql_order.$sql_limit);
|
||||
while ($this->__cdb->Next()) {
|
||||
$abaris = [];
|
||||
$aoption = ['button'=>[]];
|
||||
@@ -293,6 +300,11 @@ final class Table {
|
||||
}
|
||||
return $adata;
|
||||
}
|
||||
|
||||
private function prepare_query() {
|
||||
if ($this->__tfield == "") $this->__tfield = "`".implode('`,`', $this->__afield)."`";
|
||||
if ($this->__twhere != "") $this->__twhere = " WHERE " . $this->__twhere;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user