一江春水向东流

做一个有思想的人,期待与每一位热爱思考的人交流,您的关注是对我最大的支持。

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  44 随笔 :: 139 文章 :: 81 评论 :: 0 Trackbacks
/* ************************************
    mysql连接类实现 -write by 三千
 *************************************
*/
 
/*
 使用方法(可以执行一般mysql命令,insert, delete select  update)
 在文件前,需要加载方法
 require("mysql.class.php")
 $db=new dbMysql; 加载类
 $db->dbServer="localhost";
 $db->dbUser="root";
 $db->dbPwd="";
 $db->dbDatabase="";
 $db->dbConnect();

 query($sql,$database);
 query_first($sql,$database);
 fetch_array($sql,$database);
 count_records($table,$index,$where,$database);)//为得到一个表记录的数目,$table为表名,$index为key,$where为条件,$dbbase为数据库,后两个可以不选
 
*/

 
class  db_Mysql
 {
  
  
var   $usepconnect ;
  
var   $dbSever ;
  
var   $dbDatabase
  
var   $dbbase ;
  
var   $dbUser ;
  
var   $dbPwd ;
  
var   $dbLink ;
  
var   $query_id ; //  执行query命令的指针
   var   $num_rows ; //  返回的条目数
   var   $insert_id ; //  传回最后一次使用 INSERT 指令的 ID
   var   $affected_rows ; //  传回query命令所影响的列数目
                  // INSERT、UPDATE 或 DELETE 所影响的列 (row) 数目。
                  // delete 如果不带where,那么则返回0

   function  dbconnect( $dbbase , $usepconnect )
  {
   
// global $usepconnect;
    if ( $usepconnect == 1 )
    
$this -> dbLink = @ mysql_pconnect ( $this -> dbServer , $this -> dbUser , $this -> dbPwd); // long connect
    else
    
$this -> dbLink = @ mysql_connect ( $this -> dbServer , $this -> dbUser , $this -> dbPwd); // short connect
   //$this->dbhalt($this->dbbase);

    if ( ! $this -> dbLink)  $this -> dbhalt( " exsiting error when connecting! " );
   
if ( $this -> dbbase == "" $this -> dbbase = $this -> dbDatabase;
   
if ( ! @ mysql_select_db ( $this -> dbbase , $this -> dbLink))
    
$this -> dbhalt( " can't use this database,please check database! " );
  } 
//  end func() connect database
  //change database

   function  dbchange_db( $dbbase ){
   
$this -> dbconnect( $dbbase );
  
  }
  
function  dbquery( $sql ){
   
// if($dbbase!="") $this->dbchange_db($dbbase);
    $this -> query_id = mysql_query ( $sql );
   
// print($query_id);
    if ( ! $this -> query_id)  $this -> dbhalt( " wrong sql sentence! " . $sql );
   
return   $this -> query_id;
  }
  
function  dbquery_first( $sql , $dbbase ){
   
$query_id = dbquery( $sql , $dbbase );
   
$returnarray = mysql_fetch_array ( $query_id );
   
$this -> num_rows = mysql_num_rows ( $query_id );
   
$this -> dbfree_result( $query_id );
   
return   $returnarray ;
  }
  
function  dbhalt( $errmsg ){
   
$msg = "

database is wrong!

" ;
   
$msg = $errmsg ;
   
echo " $msg " ;
   
die ();
  }
  
function  dbfetch_array( $sql , $dbbase , $type ){
   
$query_id = $this -> dbquery( $sql , $dbbase );
   
$this -> numrows = mysql_num_rows ( $query_id );
   
for ( $i = 0 ; $i < $this -> numrows; $i ++ ){
    
if ( $type == 0 )
     
$array [ $i ] = mysql_fetch_array ( $query_id );
    
else
     
$array [ $i ] = mysql_fetch_array ( $query_id );
   }
   
$this -> dbfree_result( $query_id );
   
return   $array ;
  }
  
function  dbdelete( $sql , $dbdase ){
   
$query_id = $this -> dbquery( $sql , $dbbase );
   
$this -> affected_rows = mysql_affected_rows ( $this -> dbLink);
   
$this -> free_reuslt( $query_id );
  }
  
function  dbinsert( $sql , $dbbase ){
   
$query_id = $this -> dbquery( $sql , $dbbase );
   
$this -> insert_id = mysql_insert_id ( $this -> dbLink);
   
$this -> affected_rows = mysql_affected_rows ( $this -> dbLink);
   
$this -> free_reuslt( $query_id );
  }
  
function  dbupdate( $sql , $dbbase ){
   
$query_id = $this -> dbquery( $sql , $dbbase );
   
$this -> insert_id = mysql_insert_id ( $this -> dbLink);
   
$this -> affected_rows = mysql_affected_rows ( $this -> dbLink);
   
$this -> free_reuslt( $query_id );
  }
  
function  dbcount_records( $table , $index = " id " , $where = "" , $dbbase ){
   
if ( $dbbase != "" ) $this -> dbchangedb( $dbbase );
   
$result = @ mysql_query ( " select count( " . $index . " ) as 'num' form " . $table . " where " . $where , $this -> dbLink);
   
if ( ! $result $this -> dbhalt( " wrong sql sentence " . $sql );
    
$num = @ mysql_result ( $result , 0 , " num " );
   
return   $num ;
  }
  
function  dbgetnum( $result ){
   
$num = @ mysql_numrows ( $result );
   
return   $num ;
  }
  
function  dbfree_result( $result_id ){
   @
mysql_free_result ( $query_id );
  }
  
function  dbclose(){
   
mysql_close ( $this -> dbLink);
  }
 } 
//  end class
  $db = new  db_Mysql;
 
$db -> dbServer = " localhost " ;
 
$db -> dbUser = " root " ;
 
$db -> dbPwd = "" ;
 
$db -> dbbase = " test "


?>

/*************************************
    mysql连接类实现 -write by 三千
 **************************************/
 /*
 使用方法(可以执行一般mysql命令,insert, delete select  update)
 在文件前,需要加载方法
 require("mysql.class.php")
 $db=new dbMysql; 加载类
 $db->dbServer="localhost";
 $db->dbUser="root";
 $db->dbPwd="";
 $db->dbDatabase="";
 $db->dbConnect();

 query($sql,$database);
 query_first($sql,$database);
 fetch_array($sql,$database);
 count_records($table,$index,$where,$database);)//为得到一个表记录的数目,$table为表名,$index为key,$where为条件,$dbbase为数据库,后两个可以不选
 */

 class db_Mysql
 {
 
  var $usepconnect;
  var $dbSever;
  var $dbDatabase;
  var $dbbase;
  var $dbUser;
  var $dbPwd;
  var $dbLink;
  var $query_id;// 执行query命令的指针
  var $num_rows;// 返回的条目数
  var $insert_id;// 传回最后一次使用 INSERT 指令的 ID
  var $affected_rows;// 传回query命令所影响的列数目
                  // INSERT、UPDATE 或 DELETE 所影响的列 (row) 数目。
                  // delete 如果不带where,那么则返回0
  function dbconnect($dbbase,$usepconnect)
  {
   //global $usepconnect;
   if($usepconnect==1)
    $this->dbLink=@mysql_pconnect($this->dbServer,$this->dbUser,$this->dbPwd);//long connect
   else
    $this->dbLink=@mysql_connect($this->dbServer,$this->dbUser,$this->dbPwd);//short connect
   //$this->dbhalt($this->dbbase);
   if(!$this->dbLink) $this->dbhalt("exsiting error when connecting!");
   if($this->dbbase=="") $this->dbbase=$this->dbDatabase;
   if(!@mysql_select_db($this->dbbase,$this->dbLink))
    $this->dbhalt("can't use this database,please check database!");
  } // end func() connect database
  //change database
  function dbchange_db($dbbase){
   $this->dbconnect($dbbase);
 
  }
  function dbquery($sql){
   //if($dbbase!="") $this->dbchange_db($dbbase);
   $this->query_id=mysql_query($sql);
   //print($query_id);
   if(!$this->query_id) $this->dbhalt("wrong sql sentence!".$sql);
   return $this->query_id;
  }
  function dbquery_first($sql,$dbbase){
   $query_id=dbquery($sql,$dbbase);
   $returnarray=mysql_fetch_array($query_id);
   $this->num_rows=mysql_num_rows($query_id);
   $this->dbfree_result($query_id);
   return $returnarray;
  }
  function dbhalt($errmsg){
   $msg="

database is wrong!

";
   $msg=$errmsg;
   echo"$msg";
   die();
  }
  function dbfetch_array($sql,$dbbase,$type){
   $query_id=$this->dbquery($sql,$dbbase);
   $this->numrows=mysql_num_rows($query_id);
   for($i=0;$i<$this->numrows;$i++){
    if($type==0)
     $array[$i]=mysql_fetch_array($query_id);
    else
     $array[$i]=mysql_fetch_array($query_id);
   }
   $this->dbfree_result($query_id);
   return $array;
  }
  function dbdelete($sql,$dbdase){
   $query_id=$this->dbquery($sql,$dbbase);
   $this->affected_rows=mysql_affected_rows($this->dbLink);
   $this->free_reuslt($query_id);
  }
  function dbinsert($sql,$dbbase){
   $query_id=$this->dbquery($sql,$dbbase);
   $this->insert_id=mysql_insert_id($this->dbLink);
   $this->affected_rows=mysql_affected_rows($this->dbLink);
   $this->free_reuslt($query_id);
  }
  function dbupdate($sql,$dbbase){
   $query_id=$this->dbquery($sql,$dbbase);
   $this->insert_id=mysql_insert_id($this->dbLink);
   $this->affected_rows=mysql_affected_rows($this->dbLink);
   $this->free_reuslt($query_id);
  }
  function dbcount_records($table,$index="id",$where="",$dbbase){
   if($dbbase!="")$this->dbchangedb($dbbase);
   $result=@mysql_query("select count(".$index.") as 'num' form".$table."where".$where,$this->dbLink);
   if(!$result) $this->dbhalt("wrong sql sentence".$sql);
    $num=@mysql_result($result,0,"num");
   return $num;
  }
  function dbgetnum($result){
   $num=@mysql_numrows($result);
   return $num;
  }
  function dbfree_result($result_id){
   @mysql_free_result($query_id);
  }
  function dbclose(){
   mysql_close($this->dbLink);
  }
 } // end class
 $db=new db_Mysql;
 $db->dbServer="localhost";
 $db->dbUser="root";
 $db->dbPwd="";
 $db->dbbase="test";


?>

 

posted on 2008-05-24 20:08 allic 阅读(222) 评论(0)  编辑  收藏 所属分类: PHP+MySQL开发

只有注册用户登录后才能发表评论。


网站导航: