| 1 | <?php
 | 
|---|
| 2 | 
 | 
|---|
| 3 | // Extended database class
 | 
|---|
| 4 | // Date: 2007-07-19
 | 
|---|
| 5 | 
 | 
|---|
| 6 | class 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 | ?>
 | 
|---|