This commit is contained in:
Sebastian Titz 2021-11-24 15:09:10 +01:00
parent f1b4aaf23a
commit 4b54e14522

384
sql.php
View File

@ -1,192 +1,192 @@
<?php <?php
class SQL { class SQL {
private $h; private $h;
private $res = false; private $res = false;
private $m; private $m;
public $salt; public $salt;
public $pre; public $pre;
public $cnt_get = 0; public $cnt_get = 0;
public $cnt_set = 0; public $cnt_set = 0;
public function __construct() { public function __construct() {
require_once ('secret.php'); require_once ('secret.php');
$this->m = $_m; $this->m = $_m;
$this->pre = $_m ['pre']; $this->pre = $_m ['pre'];
$this->salt = $_m ['salt']; $this->salt = $_m ['salt'];
if (SQL_LOG) if (SQL_LOG)
$this->f = fopen ( 'sql.log', 'w' ); $this->f = fopen ( 'sql.log', 'w' );
$this->h = new mysqli ( $_m ['host'], $_m ['user'], $_m ['pass'], $_m ['data'] ); $this->h = new mysqli ( $_m ['host'], $_m ['user'], $_m ['pass'], $_m ['data'] );
if ($this->h->connect_errno) { if ($this->h->connect_errno) {
return false; return false;
} }
return true; return true;
} }
public function get($que, $t = '', $p = array ()) { public function get($que, $t = '', $p = array ()) {
// echo $que; // echo $que;
$this->cnt_get ++; $this->cnt_get ++;
if (SQL_LOG) if (SQL_LOG)
fputs ( $this->f, str_replace ( array ( fputs ( $this->f, str_replace ( array (
"\n", "\n",
" " " "
), array ( ), array (
' ', ' ',
'' ''
), $que ) . "\n" . print_r ( $p, true ) . "\n\n" ); ), $que ) . "\n" . print_r ( $p, true ) . "\n\n" );
$statement = $this->h->prepare ( $que ); $statement = $this->h->prepare ( $que );
if (is_array ( $p )) { if (is_array ( $p )) {
switch (count ( $p )) { switch (count ( $p )) {
case 0 : case 0 :
break; break;
case 1 : case 1 :
$statement->bind_param ( $t, $p [0] ); $statement->bind_param ( $t, $p [0] );
break; break;
case 2 : case 2 :
$statement->bind_param ( $t, $p [0], $p [1] ); $statement->bind_param ( $t, $p [0], $p [1] );
break; break;
case 3 : case 3 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2] );
break; break;
case 4 : case 4 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3] );
break; break;
case 5 : case 5 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4] );
break; break;
case 6 : case 6 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5] );
break; break;
case 7 : case 7 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6] );
break; break;
case 8 : case 8 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7] );
break; break;
case 9 : case 9 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7], $p [8] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7], $p [8] );
break; break;
case 10 : 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] ); $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; break;
} }
} else { } else {
$statement->bind_param ( $t, $p ); $statement->bind_param ( $t, $p );
} }
$statement->execute (); $statement->execute ();
$ret = array (); $ret = array ();
// print_r($statement); // print_r($statement);
if (isset ( $statement->error ) && $statement->error != '') { if (isset ( $statement->error ) && $statement->error != '') {
if (SQL_LOG) if (SQL_LOG)
fputs ( $this->f, $statement->error ); fputs ( $this->f, $statement->error );
return false; return false;
} }
$result = $statement->get_result (); $result = $statement->get_result ();
// print_r($result); // print_r($result);
while ( $row = $result->fetch_assoc () ) { while ( $row = $result->fetch_assoc () ) {
$ret [] = $row; $ret [] = $row;
} }
return $ret; return $ret;
} }
public function single($que, $t = '', $p = array ()) { public function single($que, $t = '', $p = array ()) {
$data = $this->get ( $que, $t, $p ); $data = $this->get ( $que, $t, $p );
if ($data) { if ($data) {
return $data [0]; return $data [0];
} }
return false; return false;
} }
public function list($que, $t = '', $p = array ()) { public function list($que, $t = '', $p = array ()) {
$data = $this->get ( $que, $t, $p ); $data = $this->get ( $que, $t, $p );
if ($data) { if ($data) {
$ret = array (); $ret = array ();
foreach ( $data as $d ) { foreach ( $data as $d ) {
foreach ( $d as $k => $v ) { foreach ( $d as $k => $v ) {
$ret [] = $v; $ret [] = $v;
} }
} }
return $ret; return $ret;
} }
return false; return false;
} }
public function keyval($que, $k, $v, $t = '', $p = array ()) { public function keyval($que, $k, $v, $t = '', $p = array ()) {
$data = $this->get ( $que, $t, $p ); $data = $this->get ( $que, $t, $p );
if ($data) { if ($data) {
$ret = array (); $ret = array ();
foreach ( $data as $d ) { foreach ( $data as $d ) {
$ret [$d [$k]] = $d [$v]; $ret [$d [$k]] = $d [$v];
} }
return $ret; return $ret;
} }
return false; return false;
} }
public function set($que, $t = '', $p = array (), $id = false) { public function set($que, $t = '', $p = array (), $id = false) {
// echo $que; // echo $que;
$this->cnt_set ++; $this->cnt_set ++;
$statement = $this->h->prepare ( $que ); $statement = $this->h->prepare ( $que );
if (SQL_LOG) if (SQL_LOG)
fputs ( $this->f, str_replace ( array ( fputs ( $this->f, str_replace ( array (
"\n", "\n",
" " " "
), array ( ), array (
' ', ' ',
'' ''
), $que ) . "\n" . print_r ( $p, true ) . "\n\n" ); ), $que ) . "\n" . print_r ( $p, true ) . "\n\n" );
if (is_array ( $p )) { if (is_array ( $p )) {
switch (count ( $p )) { switch (count ( $p )) {
case 0 : case 0 :
break; break;
case 1 : case 1 :
$statement->bind_param ( $t, $p [0] ); $statement->bind_param ( $t, $p [0] );
break; break;
case 2 : case 2 :
$statement->bind_param ( $t, $p [0], $p [1] ); $statement->bind_param ( $t, $p [0], $p [1] );
break; break;
case 3 : case 3 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2] );
break; break;
case 4 : case 4 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3] );
break; break;
case 5 : case 5 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4] );
break; break;
case 6 : case 6 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5] );
break; break;
case 7 : case 7 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6] );
break; break;
case 8 : case 8 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7] );
break; break;
case 9 : case 9 :
$statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7], $p [8] ); $statement->bind_param ( $t, $p [0], $p [1], $p [2], $p [3], $p [4], $p [5], $p [6], $p [7], $p [8] );
break; break;
case 10 : 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] ); $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; break;
} }
} else { } else {
$statement->bind_param ( $t, $p ); $statement->bind_param ( $t, $p );
} }
$statement->execute (); $statement->execute ();
if (isset ( $statement->error ) && $statement->error != '') { if (isset ( $statement->error ) && $statement->error != '') {
if (SQL_LOG) if (SQL_LOG)
fputs ( $this->f, $statement->error ); fputs ( $this->f, $statement->error );
return false; return false;
} }
if ($id) { if ($id) {
return $statement->insert_id; return $statement->insert_id;
} else { } else {
return $statement->affected_rows; return $statement->affected_rows;
} }
} }
function __destruct() { function __destruct() {
if (SQL_LOG) if (SQL_LOG)
$this->h->close (); $this->h->close ();
// echo 'DESTROY'; // echo 'DESTROY';
} }
} }
?> ?>