Contents of /alx-src/branches/alx-web-070/include/basesql.php
Parent Directory | Revision Log
Revision 13242 -
(show annotations)
(download)
Tue Jul 9 15:21:55 2019 UTC (4 years, 9 months ago) by niro
File size: 2597 byte(s)
Tue Jul 9 15:21:55 2019 UTC (4 years, 9 months ago) by niro
File size: 2597 byte(s)
-be compatible with php7 and mysqli
1 | <? |
2 | |
3 | // Verbinden |
4 | include('dbconn.php'); |
5 | |
6 | function globaling() |
7 | { |
8 | foreach ($_REQUEST as $key => $val) |
9 | { |
10 | global ${$key}; |
11 | ${$key} = $val; |
12 | } |
13 | } |
14 | |
15 | globaling(); |
16 | |
17 | // Codiert die Anführungszeichen in einem String, sodass man ihn |
18 | // in einem SQL-Aufruf einbinden kann |
19 | function redir($str) |
20 | { |
21 | $slash = "\\"; |
22 | return str_replace("'", $slash."'", str_replace($slash, $slash.$slash, $str)); |
23 | } |
24 | |
25 | function updatestr($arr) |
26 | { |
27 | $res = ''; |
28 | foreach($arr as $k=>$v) |
29 | { if($res!='') $res.=','; $res.=$k.'=\''.redir($v).'\''; } |
30 | return $res; |
31 | } |
32 | |
33 | // Fügt der Tabelle $db einen neuen Datensatz mit den Werten des asso. Arrays $vals hinzu |
34 | function sqladd($db, $vals) |
35 | { |
36 | global $DBCONN; |
37 | |
38 | $q = "INSERT INTO $db ("; |
39 | $i = 0; foreach($vals as $k=>$v) { if($i>0) { $q.=','; } $q .= redir($k); $i++; } |
40 | $q .= ") VALUES ("; |
41 | $i = 0; foreach($vals as $k=>$v) { if($i>0) { $q.=','; } $q .= "'".redir($v)."'"; $i++; } |
42 | $q .= ');'; |
43 | |
44 | $result = mysqli_query($DBCONN, $q) or die("Anfrage fehlgeschlagen: " . mysqli_error($DBCONN)); |
45 | } |
46 | |
47 | // Führt eine Callbackfunktion für alle Elemente eines Arrays aus |
48 | function arrforeach(&$arr, $func, $params) |
49 | { |
50 | foreach($arr as $k=>$v) |
51 | { $func($arr[$k], $params); } |
52 | } |
53 | |
54 | // Holt ein array mit den Results einer MySQL-Abfrage |
55 | function sqlarr($query, $arrkey='', $arrval='') |
56 | { |
57 | global $DBCONN; |
58 | $arr = array(); |
59 | |
60 | $result = mysqli_query($DBCONN, $query) or die("Anfrage fehlgeschlagen: " . mysqli_error($DBCONN)); |
61 | while ($line = mysqli_fetch_array($result, MYSQLI_ASSOC)) |
62 | { |
63 | if($arrval=='') |
64 | { |
65 | if($arrkey=='') $arr[] = $line; |
66 | else $arr[$line[$arrkey]] = $line; |
67 | } |
68 | else |
69 | { |
70 | if($arrkey=='') $arr[] = $line[$arrval]; |
71 | else $arr[$line[$arrkey]] = $line[$arrval]; |
72 | } |
73 | } |
74 | |
75 | return $arr; |
76 | } |
77 | |
78 | // Kopplung zw. arrforeach(sqlarr(...)) |
79 | function sqlforeach($query, $func, $params) |
80 | { |
81 | $myarr = sqlarr($query); |
82 | arrforeach($myarr, $func, $params); |
83 | } |
84 | |
85 | // ... |
86 | function sqlfirst($query, $prop='') |
87 | { |
88 | global $DBCONN; |
89 | |
90 | $result = mysqli_query($DBCONN, $query) or die("Anfrage fehlgeschlagen: " . mysqli_error($DBCONN)); |
91 | if($line = mysqli_fetch_array($result, MYSQLI_ASSOC)) $res = $line; |
92 | else $res = array(); |
93 | |
94 | if($prop!='') $res = $res[$prop]; |
95 | return $res; |
96 | } |
97 | |
98 | // ... |
99 | function sqlcount($what) |
100 | { |
101 | $res = sqlfirst('SELECT count(*) c FROM '.$what); |
102 | return $res['c']; |
103 | } |
104 | |
105 | function ping_host($host, $port, $timeout) |
106 | { |
107 | $retval = 244; |
108 | |
109 | $fp = @fsockopen($host, $port, $errCode, $errStr, $timeout); |
110 | //echo "Ping $host:$port ==> "; |
111 | if ($fp) { |
112 | //echo 'SUCCESS'; |
113 | fclose($fp); |
114 | $retval = 0; |
115 | } else { |
116 | //echo "ERROR: $errCode - $errStr"; |
117 | $retval = 1; |
118 | } |
119 | //echo PHP_EOL; |
120 | |
121 | return $retval; |
122 | } |
123 | |
124 | ?> |