Magellan Linux

Contents of /alx-src/branches/alx-web-070/include/basesql.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 8533 - (show annotations) (download)
Mon Feb 8 11:26:04 2016 UTC (8 years, 2 months ago) by niro
File size: 2467 byte(s)
-fixed file permissions
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 $q = "INSERT INTO $db (";
37 $i = 0; foreach($vals as $k=>$v) { if($i>0) { $q.=','; } $q .= redir($k); $i++; }
38 $q .= ") VALUES (";
39 $i = 0; foreach($vals as $k=>$v) { if($i>0) { $q.=','; } $q .= "'".redir($v)."'"; $i++; }
40 $q .= ');';
41
42 $result = mysql_query($q) or die("Anfrage fehlgeschlagen: " . mysql_error());
43 }
44
45 // Führt eine Callbackfunktion für alle Elemente eines Arrays aus
46 function arrforeach(&$arr, $func, $params)
47 {
48 foreach($arr as $k=>$v)
49 { $func($arr[$k], $params); }
50 }
51
52 // Holt ein array mit den Results einer MySQL-Abfrage
53 function sqlarr($query, $arrkey='', $arrval='')
54 {
55 $arr = array();
56
57 $result = mysql_query($query) or die("Anfrage fehlgeschlagen: " . mysql_error());
58 while ($line = mysql_fetch_array($result, MYSQL_ASSOC))
59 {
60 if($arrval=='')
61 {
62 if($arrkey=='') $arr[] = $line;
63 else $arr[$line[$arrkey]] = $line;
64 }
65 else
66 {
67 if($arrkey=='') $arr[] = $line[$arrval];
68 else $arr[$line[$arrkey]] = $line[$arrval];
69 }
70 }
71
72 return $arr;
73 }
74
75 // Kopplung zw. arrforeach(sqlarr(...))
76 function sqlforeach($query, $func, $params)
77 { arrforeach(sqlarr($query), $func, $params); }
78
79 // ...
80 function sqlfirst($query, $prop='')
81 {
82 $result = mysql_query($query) or die("Anfrage fehlgeschlagen: " . mysql_error());
83 if($line = mysql_fetch_array($result, MYSQL_ASSOC)) $res = $line;
84 else $res = array();
85
86 if($prop!='') $res = $res[$prop];
87 return $res;
88 }
89
90 // ...
91 function sqlcount($what)
92 {
93 $res = sqlfirst('SELECT count(*) c FROM '.$what);
94 return $res['c'];
95 }
96
97 function ping_host($host, $port, $timeout)
98 {
99 $retval = 244;
100
101 $fp = @fsockopen($host, $port, $errCode, $errStr, $timeout);
102 //echo "Ping $host:$port ==> ";
103 if ($fp) {
104 //echo 'SUCCESS';
105 fclose($fp);
106 $retval = 0;
107 } else {
108 //echo "ERROR: $errCode - $errStr";
109 $retval = 1;
110 }
111 //echo PHP_EOL;
112
113 return $retval;
114 }
115
116 ?>