Adding query class
This commit is contained in:
parent
8b5782c5de
commit
52c65cea85
53
Libraries/db/query.php
Normal file
53
Libraries/db/query.php
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
<?php
|
||||||
|
class Query {
|
||||||
|
private $table_name;
|
||||||
|
private array $columns_querying = array();
|
||||||
|
private int $limit=0;
|
||||||
|
|
||||||
|
public function __construct(string $table_name){
|
||||||
|
$this->table_name = $table_name;
|
||||||
|
}
|
||||||
|
public function set_columns($columns){
|
||||||
|
if (is_array($columns)){
|
||||||
|
$this->columns_querying = $columns;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function set_limit(int $limit){
|
||||||
|
if ($limit > 0){
|
||||||
|
$this->limit = $limit;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private function get_columns(){
|
||||||
|
$column_string="";
|
||||||
|
|
||||||
|
if (count($this->columns_querying) === 0){
|
||||||
|
$column_string="*";
|
||||||
|
} else {
|
||||||
|
$columns = implode(',', $this->columns_querying);
|
||||||
|
$column_string=$columns;
|
||||||
|
}
|
||||||
|
return $column_string;
|
||||||
|
}
|
||||||
|
|
||||||
|
private function get_limit() {
|
||||||
|
$modifier="";
|
||||||
|
if ($this->limit > 0){
|
||||||
|
$modifier=" LIMIT {$this->limit}";
|
||||||
|
}
|
||||||
|
return $modifier;
|
||||||
|
}
|
||||||
|
|
||||||
|
private function get_where() {
|
||||||
|
$where = "";
|
||||||
|
return $where;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function get_query_string(){
|
||||||
|
$query = "SELECT {$this->get_columns()} FROM {$this->table_name}{$this->get_where()}{$this->get_limit()};";
|
||||||
|
return $query;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
?>
|
@ -1,6 +1,9 @@
|
|||||||
<?php
|
<?php
|
||||||
include("../../Libraries/test.php");
|
include("../Libraries/table/class.php");
|
||||||
|
$db = new SQLite3("../../webcron.db");
|
||||||
|
$table = new Table("crontabs");
|
||||||
|
|
||||||
test_func();
|
$table->Load($db, "");
|
||||||
|
|
||||||
|
echo $table->get_html();
|
||||||
?>
|
?>
|
||||||
|
2
main.js
2
main.js
@ -50,7 +50,7 @@ function loadCrontab (id){
|
|||||||
}
|
}
|
||||||
|
|
||||||
function test (){
|
function test (){
|
||||||
url = "/api/crontab_view.php?name=0hourly";
|
url = "/api/test.php";
|
||||||
setAreaByUrl(url);
|
setAreaByUrl(url);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
10
test_query.php
Executable file
10
test_query.php
Executable file
@ -0,0 +1,10 @@
|
|||||||
|
#!/usr/bin/php
|
||||||
|
|
||||||
|
<?php
|
||||||
|
require("Libraries/db/query.php");
|
||||||
|
|
||||||
|
$query = new Query("crontabs");
|
||||||
|
$query->set_limit(-1);
|
||||||
|
|
||||||
|
echo $query->get_query_string();
|
||||||
|
?>
|
Loading…
Reference in New Issue
Block a user