Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1610 - (show annotations) (download)
Thu Dec 2 23:02:19 2010 UTC (13 years, 4 months ago) by niro
File size: 2089 byte(s)
-converted to unix cr/lf
1 <?
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 *