<?php
class clsConnection{
    var 
$c;
    var 
$h "localhost";
    var 
$u "root";
    var 
$p "";
    var 
$db "";    
       var 
$errmsg "";
        
    function 
clsConnection($dbServer=""$dbName=""$dbUser=""$userPassword=""){
        
$this->= ($dbServer=="") ? $this->$dbServer;
        
$this->db = ($dbName=="") ? $this->db $dbName;
        
$this->= ($dbUser=="") ? $this->$dbUser;
        
$this->= ($userPassword=="") ? $this->$userPassword;
        
$this->Connect();
        return 
$this;
    }
    function 
Connect(){
        
$this->mysql_connect($this->h$this->u$this->p);
            
$pattern "ติดต่อกับฐานข้อมูลฐานข้อมูลไม่ได้หรือชื่อเครื่องให้บริการฐานข้อมูลไม่ถูกต้อง";
            
$this->errmsg  "<p align=center>";
            
$this->errmsg .= "<table align=center border=0 cellpadding=3 cellspacing=1 bgcolor=red>";
            
$this->errmsg .= "<tr align=center bgcolor=#ff9999><th>เกิดข้อผิดพลาด</th></tr>";
            
$this->errmsg .= "<tr align=center bgcolor=#ffffff><td><br>$pattern<br><br></td></tr>";
            
$this->errmsg .= "</table>";
            
$this->errmsg .= "</p>";
        if (!
$this->c) {
            if (!isset(
$GLOBALS["DEBUG_MODE"]) || !$GLOBALS["DEBUG_MODE"])
                die(
$this->errmsg);
        } else {
            if (!
mysql_select_db($this->db$this->c)) {
                
$replaces "ไม่มีฐานข้อมูลตามที่ระบุหรือการเลือกฐานข้อไม่สำเร็จ";
                
$this->errmsg preg_replace("/($pattern)/"
                                             
"$replaces"$this->errmsg);
                if (!isset(
$GLOBALS["DEBUG_MODE"]) || !$GLOBALS["DEBUG_MODE"])
                    die(
$this->errmsg);
                
            } else {
                
mysql_query("SET NAMES 'tis620'"$this->c);
                
$this->errmsg "";
            }
        }
    }    
    function 
Disconnect(){
        return 
mysql_close($this->c);
    }    
    function 
Execute($query){
        return 
mysql_query($query$this->c);
    }
    function 
BeginTrans(){
        
$this->Execute("SET AUTOCOMMIT=0");
    }
    function 
CommitTrans(){
        
$this->Execute("commit");
        
$this->Execute("SET AUTOCOMMIT=1");
    }
    function 
RollbackTrans(){
        
$this->Execute("rollback");
        
$this->Execute("SET AUTOCOMMIT=1");
    }
}
?>