source: class/database.php

Last change on this file was 3, checked in by maron, 15 years ago
File size: 3.0 KB
Line 
1<?php
2
3// Extended database class
4// Date: 2007-07-19
5
6class database extends mysqli
7{
8 var $Prefix = '';
9 var $LastQuery = '';
10 var $LastDataSet;
11 var $LastNumRows;
12 var $Debug = true;
13
14 function query($Query)
15 {
16 $this->LastQuery = $Query;
17 if ($this->error <> '' and $this->Debug) $this->error.': '.$this->LastQuery;
18 return(parent::query($Query));
19 }
20
21 function select($Table, $What = '*', $Condition = 1)
22 {
23 $this->LastQuery = "SELECT ".$What." FROM `".$this->Prefix.$Table."` WHERE ".$Condition;
24 $resul = $this->query($this->LastQuery);
25 if ($this->error <> '' and $this->Debug) echo $this->error.': '.$this->LastQuery;
26
27 $this->LastNumRows = $resul->num_rows;
28 if ( $this->LastNumRows > 0 ) {
29 $this->LastDataSet = true;
30 } else {
31 $this->LastDataSet = false;
32 }
33 return($resul);
34 }
35
36 function delete($Table, $Condition)
37 {
38 $this->LastQuery = "DELETE FROM `".$this->Prefix.$Table."` WHERE ".$Condition;
39 $this->query($this->LastQuery);
40 if ($this->error <> '' and $Debug) echo $this->error.': '.$this->LastQuery;
41 }
42
43 function insert($Table, $Data)
44 {
45 $Name = '';
46 $Values = '';
47 foreach($Data as $Key => $Value)
48 {
49 $Value = strtr($Value, '"', '\"');
50 $Name .= ',`'.$Key.'`';
51 if($Value == 'NOW()') $Values .= ",".$Value;
52 else $Values .= ",'".$Value."'";
53 }
54 $Name = substr($Name, 1);
55 $Values = substr($Values, 1);
56 $this->LastQuery = 'INSERT INTO `'.$this->Prefix.$Table.'` ('.$Name.') VALUES('.$Values.')';
57 $this->query($this->LastQuery);
58 if ($this->error <> '' and $Debug) echo $this->error.': '.$this->LastQuery;
59 }
60
61 function update($Table, $Condition, $Data)
62 {
63 $Values = '';
64 foreach($Data as $Key => $Value)
65 {
66 $Value = strtr($Value, '"', '\"');
67 if($Value != 'NOW()') $Value = "'".$Value."'";
68 $Values .= ", ".$Key."=".$Value;
69 }
70 $Values = substr($Values, 2);
71 $this->LastQuery = 'UPDATE `'.$this->Prefix.$Table.'` SET '.$Values.' WHERE ('.$Condition.')';
72 $this->query($this->LastQuery);
73 if ($this->error <> '' and $this->Debug) echo $this->error.': '.$this->LastQuery;
74 }
75
76 function replace($Table, $Data)
77 {
78 $Name = '';
79 $Values = '';
80 foreach($Data as $Key => $Value)
81 {
82 $Value = strtr($Value, '"', '\"');
83 $Name .= ',`'.$Key.'`';
84 if($Value == 'NOW()') $Values .= ",".$Value;
85 else $Values .= ',"'.$Value.'"';
86 }
87 $Name = substr($Name, 1);
88 $Values = substr($Values, 1);
89 //echo('REPLACE INTO `'.$this->Prefix.$Table.'` ('.$Name.') VALUES ('.$Values.')<br>');
90 $this->LastQuery = 'REPLACE INTO `'.$this->Prefix.$Table.'` ('.$Name.') VALUES('.$Values.')';
91 $this->query($this->LastQuery);
92 //echo($this->error().'<br>');
93 }
94
95 function charset($Charset)
96 {
97 $this->LastQuery = 'SET CHARACTER SET '.$Charset;
98 $this->query($this->LastQuery);
99 }
100
101}
102
103?>
Note: See TracBrowser for help on using the repository browser.