This commit is contained in:
home 2019-11-05 18:13:26 +01:00
commit dc6348e919
11 changed files with 350 additions and 0 deletions

4
.gitignore vendored Normal file
View File

@ -0,0 +1,4 @@
/.buildpath
/.project
/secret.php
/config.php

3
README.md Normal file
View File

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

10
_func.php Normal file
View File

@ -0,0 +1,10 @@
<?php
include ('config.php');
include ('sql.php');
$sql = new SQL ();
include ('string.php');
include ('numbers.php');
include ('mail.php');
include ('debug.php');
include ('markdown.php');
?>

3
config.php.example Normal file
View File

@ -0,0 +1,3 @@
<?php
define ( 'SQL_LOG', 1 ); // schreibt sql querys in eine log
?>

14
debug.php Normal file
View File

@ -0,0 +1,14 @@
<?php
function debug($s) {
if(isset($_COOKIE['debug']))
print_r($s);
}
function debugCookie($on=true) {
if($on) {
setcookie('debug','1',time()+(60*60*24*365),"/");
}else{
setcookie('debug',null,0,"/");
}
}
?>

17
mail.php Normal file
View File

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

6
markdown.php Normal file
View File

@ -0,0 +1,6 @@
<?php
// TODO markdown imple
function decode_md($str) {
return $str;
}
?>

37
numbers.php Normal file
View File

@ -0,0 +1,37 @@
<?php
function decade($zahl)
{
if (! is_numeric($zahl) || $zahl == 0)
return $zahl;
$si = array(
- 4 => 'p',
- 3 => 'n',
- 2 => '&mu;',
- 1 => 'm',
0 => '',
1 => 'K',
2 => 'M',
3 => 'G',
4 => 'T'
);
$e = 0;
if ($zahl < 1) {
while ($zahl < 1 || $zahl >= 1000) {
$zahl = $zahl * 1000;
$e --;
}
} else {
while ($zahl < 1 || $zahl >= 1000) {
$zahl = $zahl / 1000;
$e ++;
}
}
return $zahl . ' ' . $si[$e];
}
function onlyNumeric($num) {
return preg_replace("/[^0-9\.\-]+/", "", $num);
}
?>

10
secret.php.example Normal file
View File

@ -0,0 +1,10 @@
<?php
define ( 'SQL_LOG', 1 ); // schreibt sql querys in eine log
$_m['host'] = 'localhost';
$_m['user'] = '';
$_m['pass'] = '';
$_m['data'] = '';
$_m['pre'] = 'efcms2_';
$_m['salt'] = '';
?>

176
sql.php Normal file
View File

@ -0,0 +1,176 @@
<?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 ('secret.php');
$this->m = $_m;
$this->pre = $_m ['pre'];
$this->salt = $_m ['salt'];
if (SQL_LOG)
$this->f = fopen ( 'sql.log', 'w' );
$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 ++;
if (SQL_LOG)
fputs ( $this->f, str_replace ( array (
"\n",
" "
), array (
' ',
''
), $que ) . "\n" . print_r ( $p, true ) . "\n\n" );
$statement = $this->h->prepare ( $que );
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;
}
$statement->execute ();
$ret = array ();
// print_r($statement);
if (isset ( $statement->error ) && $statement->error != '') {
if (SQL_LOG)
fputs ( $this->f, $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 set($que, $t = '', $p = array(), $id = false) {
// echo $que;
$this->cnt_set ++;
$statement = $this->h->prepare ( $que );
if (SQL_LOG)
fputs ( $this->f, str_replace ( array (
"\n",
" "
), array (
' ',
''
), $que ) . "\n" . print_r ( $p, true ) . "\n\n" );
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;
}
$statement->execute ();
if (isset ( $statement->error ) && $statement->error != '') {
if (SQL_LOG)
fputs ( $this->f, $statement->error );
return false;
}
if ($id) {
return $statement->insert_id;
} else {
return $statement->affected_rows;
}
}
function __destruct() {
if (SQL_LOG)
$this->h->close ();
// echo 'DESTROY';
}
}
?>

70
string.php Normal file
View File

@ -0,0 +1,70 @@
<?php
function umlaute($str) {
return str_replace(array(
'Ä',
'Ö',
'Ü',
'ä',
'ö',
'ü',
'ß'
), array(
'&Auml;',
'&Ouml;',
'&Uuml;',
'&auml;',
'&ouml;',
'&uuml;',
'&szlig;'
), $str);
}
function chk($str) {
return str_replace("'", '"', $str);
}
function noScript($str) {
return str_replace(array(
'<',
'>'
), array(
'&lt;',
'&gt;'
), $str);
}
function random($name_laenge) {
$zeichen = "abcedfghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRTSUVWXYZ0123456789";
$name_neu = "";
@mt_srand((double)microtime() * 1000000);
for($i = 0; $i < $name_laenge; $i++){
$r = mt_rand(0, strlen($zeichen) - 1);
$name_neu .= $zeichen{$r};
}
return $name_neu;
}
function startsWith($haystack, $needle) {
$length = strlen($needle);
return (substr($haystack, 0, $length) === $needle);
}
function endsWith($haystack, $needle) {
$length = strlen($needle);
return $length === 0 || (substr($haystack, -$length) === $needle);
}
function onlyAlpha($str) {
return preg_replace("/[^a-zA-Z0-9 \-\_]+/", "", $str);
}
function shortener($str, $len = 50, $fill = '...') {
if(strlen($str) > $len){
$str = substr($str, 0, $len - strlen($fill)) . $fill;
}
return $str;
}
function isEmail($str) {
$match = preg_match("/[a-zA-Z0-9\-\_\.]*\@[a-zA-Z0-9\-\_\.]*.[a-z]{2,10}/", $str);
if($match){
return $str;
}
return false;
}
?>