Füge SQL-Klasse hinzu, um Datenbankoperationen zu verwalten, und erstelle Beispielkonfigurationsdatei für geheime Daten
This commit is contained in:
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
www/secret.php
|
||||||
174
www/_sql.php
Normal file
174
www/_sql.php
Normal file
@@ -0,0 +1,174 @@
|
|||||||
|
<?php
|
||||||
|
class SQL {
|
||||||
|
private $h;
|
||||||
|
private $res = false;
|
||||||
|
private $m;
|
||||||
|
public $salt;
|
||||||
|
public $pre;
|
||||||
|
public $cnt_get = 0;
|
||||||
|
public $cnt_set = 0;
|
||||||
|
public function __construct() {
|
||||||
|
require_once ('secret.php');
|
||||||
|
|
||||||
|
$this->m = $_m;
|
||||||
|
|
||||||
|
$this->h = new mysqli ( $_m ['host'], $_m ['user'], $_m ['pass'], $_m ['data'] );
|
||||||
|
if ($this->h->connect_errno) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
public function get($que, $t = '', $p = array ()) {
|
||||||
|
// echo $que;
|
||||||
|
$this->cnt_get ++;
|
||||||
|
|
||||||
|
$statement = $this->h->prepare ( $que );
|
||||||
|
if (is_array ( $p )) {
|
||||||
|
switch (count ( $p )) {
|
||||||
|
case 0 :
|
||||||
|
break;
|
||||||
|
case 1 :
|
||||||
|
$statement->bind_param ( $t, $p [0] );
|
||||||
|
break;
|
||||||
|
case 2 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1] );
|
||||||
|
break;
|
||||||
|
case 3 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2] );
|
||||||
|
break;
|
||||||
|
case 4 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3] );
|
||||||
|
break;
|
||||||
|
case 5 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4] );
|
||||||
|
break;
|
||||||
|
case 6 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5] );
|
||||||
|
break;
|
||||||
|
case 7 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6] );
|
||||||
|
break;
|
||||||
|
case 8 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7] );
|
||||||
|
break;
|
||||||
|
case 9 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7], $p [8] );
|
||||||
|
break;
|
||||||
|
case 10 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7], $p [8], $p [9] );
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$statement->bind_param ( $t, $p );
|
||||||
|
}
|
||||||
|
$statement->execute ();
|
||||||
|
|
||||||
|
$ret = array ();
|
||||||
|
|
||||||
|
// print_r($statement);
|
||||||
|
if (isset ( $statement->error ) && $statement->error != '') {
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
$result = $statement->get_result ();
|
||||||
|
// print_r($result);
|
||||||
|
while ( $row = $result->fetch_assoc () ) {
|
||||||
|
$ret [] = $row;
|
||||||
|
}
|
||||||
|
return $ret;
|
||||||
|
}
|
||||||
|
public function single($que, $t = '', $p = array ()) {
|
||||||
|
$data = $this->get ( $que, $t, $p );
|
||||||
|
if ($data) {
|
||||||
|
return $data [0];
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
public function list($que, $t = '', $p = array ()) {
|
||||||
|
$data = $this->get ( $que, $t, $p );
|
||||||
|
if ($data) {
|
||||||
|
$ret = array ();
|
||||||
|
foreach ( $data as $d ) {
|
||||||
|
foreach ( $d as $k => $v ) {
|
||||||
|
$ret [] = $v;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $ret;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
public function keyval($que, $k, $v, $t = '', $p = array ()) {
|
||||||
|
$data = $this->get ( $que, $t, $p );
|
||||||
|
if ($data) {
|
||||||
|
$ret = array ();
|
||||||
|
foreach ( $data as $d ) {
|
||||||
|
$ret [$d [$k]] = $d [$v];
|
||||||
|
}
|
||||||
|
return $ret;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
public function set($que, $t = '', $p = array (), $id = false) {
|
||||||
|
// echo $que;
|
||||||
|
$this->cnt_set ++;
|
||||||
|
$statement = $this->h->prepare ( $que );
|
||||||
|
if (is_array ( $p )) {
|
||||||
|
switch (count ( $p )) {
|
||||||
|
case 0 :
|
||||||
|
break;
|
||||||
|
case 1 :
|
||||||
|
$statement->bind_param ( $t, $p [0] );
|
||||||
|
break;
|
||||||
|
case 2 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1] );
|
||||||
|
break;
|
||||||
|
case 3 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2] );
|
||||||
|
break;
|
||||||
|
case 4 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3] );
|
||||||
|
break;
|
||||||
|
case 5 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4] );
|
||||||
|
break;
|
||||||
|
case 6 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5] );
|
||||||
|
break;
|
||||||
|
case 7 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6] );
|
||||||
|
break;
|
||||||
|
case 8 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7] );
|
||||||
|
break;
|
||||||
|
case 9 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7], $p [8] );
|
||||||
|
break;
|
||||||
|
case 10 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7], $p [8], $p [9] );
|
||||||
|
break;
|
||||||
|
case 11 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7], $p [8], $p [9], $p [10] );
|
||||||
|
break;
|
||||||
|
case 12 :
|
||||||
|
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7], $p [8], $p [9], $p [10], $p [11] );
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$statement->bind_param ( $t, $p );
|
||||||
|
}
|
||||||
|
$statement->execute ();
|
||||||
|
if (isset ( $statement->error ) && $statement->error != '') {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($id) {
|
||||||
|
return $statement->insert_id;
|
||||||
|
} else {
|
||||||
|
return $statement->affected_rows;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function __destruct() {
|
||||||
|
// echo 'DESTROY';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
?>
|
||||||
@@ -1,4 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
|
require '_sql.php';
|
||||||
|
|
||||||
$uuid = $_GET['uuid'] ?? 'keine UUID';
|
$uuid = $_GET['uuid'] ?? 'keine UUID';
|
||||||
if(isset($_COOKIE['PHPSESSID'])){
|
if(isset($_COOKIE['PHPSESSID'])){
|
||||||
session_start();
|
session_start();
|
||||||
|
|||||||
7
www/secret.php.example
Normal file
7
www/secret.php.example
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
<?php
|
||||||
|
$_m = [
|
||||||
|
'host' => 'mariadb',
|
||||||
|
'user' => 'appuser',
|
||||||
|
'pass' => 'apppass',
|
||||||
|
'data' => 'appdb'
|
||||||
|
];
|
||||||
Reference in New Issue
Block a user