3 Commits

Author SHA1 Message Date
troy grunt
c13739e81f hotfixes 2021-04-01 22:08:16 +02:00
troy grunt
c414ec0917 dürfte passen 2021-04-01 21:24:02 +02:00
troy grunt
0d1c93bdb5 SQL update 2021-04-01 19:17:50 +02:00
8 changed files with 245 additions and 269 deletions

1
.gitignore vendored
View File

@@ -3,4 +3,3 @@
/secret.php /secret.php
/config.php /config.php
/test.php /test.php
/_secret.php

View File

@@ -1,2 +1,3 @@
# php-func-lib git submodule add https://git.seemsleg.it/ef/php-func-lib lib
git submodule add https://git.seemsleg.it/pub/php-func-lib lib
test

View File

@@ -6,5 +6,5 @@ include_once ('string.php');
include_once ('numbers.php'); include_once ('numbers.php');
include_once ('mail.php'); include_once ('mail.php');
include_once ('debug.php'); include_once ('debug.php');
// include_once ('markdown.php'); include_once ('markdown.php');
?> ?>

View File

@@ -1,21 +0,0 @@
<?php
$_ips_crawler = array (
'40.77.167.', // bing bot
'66.249.',
'62.138.',
'62.210.149.60',
'92.118.160.37', // netsystem research bot
'104.155.85.', // google
'114.119.1', // petalbot
'185.191.171.', // semrush bot
'207.46.13.', // bing bot
'54.36.148.', // ahrefbot
'54.36.149.', // ahrefbot
'216.244.66.196', // opensiteexplorer
'65.21.180.26', // seekport
'81.209.177.145', // website-datenbank.de
'2a01:4f8:190:4244::2', // mj12bot
'192.99.5.225', // ...
'157.55.39.' // microsoft???
);
?>

View File

@@ -1,17 +1,14 @@
<?php <?php
function send_mail($an, $betreff, $text, $ok = '', $error = '') {
include 'secret.php'; function send_mail($an, $betreff, $text, $ok = '', $error = '')
$sender = 'noreply@troy-grunt.de'; {
if (isset ( $_sendermail )) { $header = 'From: noreply@isleofhope.de' . "\r\n";
$sender = $_sendermail;
}
$header = 'From: ' . $sender . "\r\n";
$header .= 'To: ' . $an . "\r\n"; $header .= 'To: ' . $an . "\r\n";
$header .= 'Content-Type:text/html' . "\r\n"; $header .= 'Content-Type:text/html' . "\r\n";
$header .= 'Content-Transfer-Encoding: 8bit' . "\r\n"; $header .= 'Content-Transfer-Encoding: 8bit' . "\r\n";
$header .= 'X-Mailer: PHP/' . phpversion (); $header .= 'X-Mailer: PHP/' . phpversion();
if (mail ( $an, $betreff, $text, $header ) === true) { if (mail($an, $betreff, $text, $header) === true) {
echo $ok; echo $ok;
} else { } else {
echo $error; echo $error;

View File

@@ -7,6 +7,4 @@ $_m['pass'] = '';
$_m['data'] = ''; $_m['data'] = '';
$_m['pre'] = 'efcms2_'; $_m['pre'] = 'efcms2_';
$_m['salt'] = ''; $_m['salt'] = '';
$_sendermail = 'noreply@troy-grunt.de';
?> ?>

204
sql.php
View File

@@ -1,4 +1,12 @@
<?php <?php
/*
* $query = sprintf("SELECT firstname, lastname, address, age FROM friends
* WHERE firstname='%s' AND lastname='%s'",
* mysql_real_escape_string($firstname),
* mysql_real_escape_string($lastname));
*
*
*/
class SQL { class SQL {
private $h; private $h;
private $res = false; private $res = false;
@@ -16,12 +24,95 @@ class SQL {
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 = mysqli_connect ( $_m ['host'], $_m ['user'], $_m ['pass'] );
if ($this->h->connect_errno) { //var_dump ( $this->h );
if (! $this->h) {
return false; return false;
} }
mysqli_select_db ( $this->h, $_m ['data'] );
return true; return true;
} }
private function prepare($q, $t, $p) {
$t = str_split ( $t );
$v = array ();
$q = str_replace ( "?", "%s", $q );
foreach ( $t as $i => $c ) {
switch ($c) {
case 's' :
$v [] = "'" . mysqli_real_escape_string ( $this->h, $p [$i] ) . "'";
break;
case 'i' :
$v [] = ( int ) $p [$i];
break;
case 'd' :
$v [] = ( double ) $p [$i];
break;
default :
//return false;
}
}
$res = array ();
switch (count ( $p )) {
case 0 :
$res = mysqli_query ( $this->h, $q );
break;
case 1 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0] ) );
break;
case 2 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1] ) );
break;
case 3 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1], $v [2] ) );
break;
case 4 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1], $v [2], $v [3] ) );
break;
case 5 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1], $v [2], $v [3], $v [4] ) );
break;
case 6 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1], $v [2], $v [3], $v [4], $v [5] ) );
break;
case 7 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1], $v [2], $v [3], $v [4], $v [5], $v [6] ) );
break;
case 8 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1], $v [2], $v [3], $v [4], $v [5], $v [6], $v [7] ) );
break;
case 9 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1], $v [2], $v [3], $v [4], $v [5], $v [6], $v [7], $v [8] ) );
break;
case 10 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1], $v [2], $v [3], $v [4], $v [5], $v [6], $v [7], $v [8], $v [9] ) );
break;
case 11 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1], $v [2], $v [3], $v [4], $v [5], $v [6], $v [7], $v [8], $v [9], $v [10] ) );
break;
case 12 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1], $v [2], $v [3], $v [4], $v [5], $v [6], $v [7], $v [8], $v [9], $v [10], $v [11] ) );
break;
case 13 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1], $v [2], $v [3], $v [4], $v [5], $v [6], $v [7], $v [8], $v [9], $v [10], $v [11], $v [12] ) );
break;
case 14 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1], $v [2], $v [3], $v [4], $v [5], $v [6], $v [7], $v [8], $v [9], $v [10], $v [11], $v [12], $v [13] ) );
break;
case 15 :
$res = mysqli_query ( $this->h, sprintf ( $q, $v [0], $v [1], $v [2], $v [3], $v [4], $v [5], $v [6], $v [7], $v [8], $v [9], $v [10], $v [11], $v [12], $v [13], $v [14] ) );
break;
}
//echo 'ERROR:';
//var_dump ( mysqli_error_list ( $this->h ) );
//echo '<br>';
/*
* if (! $res || mysqli_errno ( $this->h )) {
* return false;
* }
*/
return $res;
}
public function get($que, $t = '', $p = array ()) { public function get($que, $t = '', $p = array ()) {
// echo $que; // echo $que;
$this->cnt_get ++; $this->cnt_get ++;
@@ -33,60 +124,23 @@ class SQL {
' ', ' ',
'' ''
), $que ) . "\n" . print_r ( $p, true ) . "\n\n" ); ), $que ) . "\n" . print_r ( $p, true ) . "\n\n" );
$statement = $this->h->prepare ( $que ); $res = $this->prepare ( $que, $t, $p );
if (is_array ( $p )) { //var_dump ( $res );
switch (count ( $p )) { //echo '<hr>';
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 (); $ret = array ();
// print_r($statement); // print_r($statement);
if (isset ( $statement->error ) && $statement->error != '') { if (! $res) {
if (SQL_LOG) if (SQL_LOG)
fputs ( $this->f, $statement->error ); fputs ( $this->f, mysqli_error ( $this->h ) );
return false; return false;
} }
$result = $statement->get_result (); while ( $row = $res->fetch_assoc () ) {
// print_r($result);
while ( $row = $result->fetch_assoc () ) {
$ret [] = $row; $ret [] = $row;
} }
//var_dump ( $ret );
//echo '<hr><hr>';
return $ret; return $ret;
} }
public function single($que, $t = '', $p = array ()) { public function single($que, $t = '', $p = array ()) {
@@ -123,7 +177,6 @@ class SQL {
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 );
if (SQL_LOG) if (SQL_LOG)
fputs ( $this->f, str_replace ( array ( fputs ( $this->f, str_replace ( array (
"\n", "\n",
@@ -132,61 +185,22 @@ class SQL {
' ', ' ',
'' ''
), $que ) . "\n" . print_r ( $p, true ) . "\n\n" ); ), $que ) . "\n" . print_r ( $p, true ) . "\n\n" );
if (is_array ( $p )) { $res = $this->prepare ( $que, $t, $p );
switch (count ( $p )) {
case 0 : if (! $res) {
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 ();
if (isset ( $statement->error ) && $statement->error != '') {
if (SQL_LOG) if (SQL_LOG)
fputs ( $this->f, $statement->error ); fputs ( $this->f, mysqli_error ( $this->h ) );
return false; return false;
} }
if ($id) { if ($id) {
return $statement->insert_id; return mysqli_insert_id ( $this->h );
} else { } else {
return $statement->affected_rows; return ( bool ) mysqli_affected_rows ( $this->h );
} }
} }
function __destruct() { function __destruct() {
if (SQL_LOG) mysqli_close ( $this->h );
$this->h->close ();
// echo 'DESTROY';
} }
} }
?> ?>

View File

@@ -7,8 +7,7 @@ function umlaute($str) {
'ä', 'ä',
'ö', 'ö',
'ü', 'ü',
'ß', 'ß'
'&'
), array ( ), array (
'&Auml;', '&Auml;',
'&Ouml;', '&Ouml;',
@@ -16,8 +15,7 @@ function umlaute($str) {
'&auml;', '&auml;',
'&ouml;', '&ouml;',
'&uuml;', '&uuml;',
'&szlig;', '&szlig;'
'&amp;'
), $str ); ), $str );
} }
function chk($str) { function chk($str) {
@@ -259,14 +257,4 @@ function onlySimpleHTML($s) {
return $s; return $s;
} }
function linkify($input) {
$pattern = '@(http(s)?://[a-zA-Z0-9/\.\#\-\_]*)@';
return $output = preg_replace ( $pattern, '<a href="$1">$1</a>', $input );
}
function inStr($needle, $haystack) {
if (strpos ( $haystack, $needle ) !== false) {
return true;
}
return false;
}
?> ?>