Annotation of /alx-src/branches/alx-web-070/include/basesql.php
Parent Directory | Revision Log
Revision 1600 -
(hide annotations)
(download)
Thu Dec 2 19:56:40 2010 UTC (13 years, 9 months ago) by niro
Original Path: alx-src/branches/alx-web-050/include/basesql.php
File size: 2173 byte(s)
Thu Dec 2 19:56:40 2010 UTC (13 years, 9 months ago) by niro
Original Path: alx-src/branches/alx-web-050/include/basesql.php
File size: 2173 byte(s)
-import from 050
1 | niro | 1600 | <? |
2 | // Verbinden | ||
3 | include('dbconn.php'); | ||
4 | |||
5 | // Codiert die Anführungszeichen in einem String, sodass man ihn | ||
6 | // in einem SQL-Aufruf einbinden kann | ||
7 | function redir($str) | ||
8 | { | ||
9 | $slash = "\\"; | ||
10 | return str_replace("'", $slash."'", str_replace($slash, $slash.$slash, $str)); | ||
11 | } | ||
12 | |||
13 | function updatestr($arr) | ||
14 | { | ||
15 | $res = ''; | ||
16 | foreach($arr as $k=>$v) | ||
17 | { if($res!='') $res.=','; $res.=$k.'=\''.redir($v).'\''; } | ||
18 | return $res; | ||
19 | } | ||
20 | |||
21 | // Fügt der Tabelle $db einen neuen Datensatz mit den Werten des asso. Arrays $vals hinzu | ||
22 | function sqladd($db, $vals) | ||
23 | { | ||
24 | $q = "INSERT INTO $db ("; | ||
25 | $i = 0; foreach($vals as $k=>$v) { if($i>0) { $q.=','; } $q .= redir($k); $i++; } | ||
26 | $q .= ") VALUES ("; | ||
27 | $i = 0; foreach($vals as $k=>$v) { if($i>0) { $q.=','; } $q .= "'".redir($v)."'"; $i++; } | ||
28 | $q .= ');'; | ||
29 | |||
30 | $result = mysql_query($q) or die("Anfrage fehlgeschlagen: " . mysql_error()); | ||
31 | } | ||
32 | |||
33 | // Führt eine Callbackfunktion für alle Elemente eines Arrays aus | ||
34 | function arrforeach(&$arr, $func, $params) | ||
35 | { | ||
36 | foreach($arr as $k=>$v) | ||
37 | { $func($arr[$k], $params); } | ||
38 | } | ||
39 | |||
40 | // Holt ein array mit den Results einer MySQL-Abfrage | ||
41 | function sqlarr($query, $arrkey='', $arrval='') | ||
42 | { | ||
43 | $arr = array(); | ||
44 | |||
45 | $result = mysql_query($query) or die("Anfrage fehlgeschlagen: " . mysql_error()); | ||
46 | while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) | ||
47 | { | ||
48 | if($arrval=='') | ||
49 | { | ||
50 | if($arrkey=='') $arr[] = $line; | ||
51 | else $arr[$line[$arrkey]] = $line; | ||
52 | } | ||
53 | else | ||
54 | { | ||
55 | if($arrkey=='') $arr[] = $line[$arrval]; | ||
56 | else $arr[$line[$arrkey]] = $line[$arrval]; | ||
57 | } | ||
58 | } | ||
59 | |||
60 | return $arr; | ||
61 | } | ||
62 | |||
63 | // Kopplung zw. arrforeach(sqlarr(...)) | ||
64 | function sqlforeach($query, $func, $params) | ||
65 | { arrforeach(sqlarr($query), $func, $params); } | ||
66 | |||
67 | // ... | ||
68 | function sqlfirst($query, $prop='') | ||
69 | { | ||
70 | $result = mysql_query($query) or die("Anfrage fehlgeschlagen: " . mysql_error()); | ||
71 | if($line = mysql_fetch_array($result, MYSQL_ASSOC)) $res = $line; | ||
72 | else $res = array(); | ||
73 | |||
74 | if($prop!='') $res = $res[$prop]; | ||
75 | return $res; | ||
76 | } | ||
77 | |||
78 | // ... | ||
79 | function sqlcount($what) | ||
80 | { | ||
81 | $res = sqlfirst('SELECT count(*) c FROM '.$what); | ||
82 | return $res['c']; | ||
83 | } | ||
84 | ?> |
Properties
Name | Value |
---|---|
svn:executable | * |