自用php数据库连接等操作类

使用的时候 $db = new DB; 就可以了.

PHP代码
  1. $global_vars = array(   
  2. "DB_HOST" => "localhost",    
  3. "DB_PWD" => "password",   
  4. "DB_USER" => "user",    
  5. "DB_MAIN" =>"database",   
  6. );   
  7. while (list($key$value) = each($global_vars)) {   
  8.     define($key$value);   
  9.            
  10. class DB {   
  11.     var $lid;           // a MySQL link identifier   
  12.     var $debug;         // mode   
  13.     var $accessdb;   
  14.          
  15.     function __construct($dbname = DB_MAIN){   
  16.         $this->lid = 0;   
  17.         $this->accessdb = $dbname;   
  18.         $this->debug = true;   
  19.         $this->connect();   
  20.    }   
  21.   
  22.     function __destruct(){   
  23.         $this->close();   
  24.     }   
  25.   
  26.     function connect(){   
  27.         if($this->lid == 0){   
  28.             $this->lid =    @mysql_connect(DB_HOST, DB_USER, DB_PWD);   
  29.             if(!$this->lid) $this->_error('Could not connect: ' . mysql_error());   
  30.             $this->select_db();   
  31.         }   
  32.         return $this->lid;   
  33.     }   
  34.        
  35.     function select_db(){   
  36.         if($this->lid){   
  37.             if(!mysql_select_db($this->accessdb,$this->lid)) $this->_error('Can not use Database : ' . mysql_error());   
  38.         }   
  39.     }   
  40.        
  41.     function change_db($name = DB_MAIN){   
  42.         $this->accessdb = $name;   
  43.         $this->select_db();   
  44.     }   
  45.        
  46.     function close(){   
  47.         if($this->lid){   
  48.             mysql_close($this->lid);   
  49.             $this->lid = 0;   
  50.         }   
  51.     }   
  52.        
  53.     function _error($str){   
  54.         if($this->lid) $this->close();   
  55.         if($this->debug) die($str);   
  56.         else die;   
  57.     }                  
  58.   
  59.     function query($q){   
  60.         if(emptyempty($q)) $this->_error('Empty MySQL Query.');   
  61.         if($this->lid == 0) $this->connect();   
  62.         //mysql_query("set names gb2312");   
  63.         $temp = @mysql_query($q$this->lid);   
  64.         if(!$temp$this->_error('Invalid Query : '.mysql_error().'<br />'.$q);   
  65.         return $temp;   
  66.     }   
  67.   
  68.     function insert_id(){   
  69.         return @mysql_insert_id($this->lid);   
  70.     }   
  71.   
  72.     function fetch($result){   
  73.         if(!$result$this->_error('Empty MySQL resource.');   
  74.            
  75.         return @mysql_fetch_array($result);   
  76.     }   
  77.        
  78.     function fetch_assoc($result){   
  79.         if(!$result$this->_error('Empty MySQL resource.');   
  80.   
  81.         return @mysql_fetch_assoc($result);   
  82.     }   
  83.        
  84.     function fetch_row($result){   
  85.         if(!$result$this->_error('Empty MySQL resource.');   
  86.   
  87.         return @mysql_fetch_row($result);   
  88.     }   
  89.        
  90.     function fetch_object($result){   
  91.         if(!$result$this->_error('Empty MySQL resource.');   
  92.   
  93.         return @mysql_fetch_object($result);   
  94.     }   
  95.   
  96.     function num_rows($result) {    
  97.         if(!$resultreturn 0;   
  98.         return @mysql_num_rows($result);   
  99.     }   
  100. }  

1条评论

viatop

看到高手都写了好多mysql操作类,这个php数据库连接操作类只是基础的.

回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注

😉😐😡😈🙂😯🙁🙄😛😳😮:mrgreen:😆💡😀👿😥😎😕