PHP 连接mysql数据库类的简单示例

PHP MysqL数据库连接类代码感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!

/**
 * PHP MysqL数据库连接类代码
 *
 * @param 
 * @arrange 512-笔记网: www.www.jb51.cc
* 名称: 数据库连接类
* 介绍: 适用于各种数据库链接
*/
class MysqL { 
private $_link;
public function __construct($dbhost='localhost',$dbuser='root',$dbpassword='',$dbname='taojindidai',$charset='gbk') { 
$this->_link = MysqL_connect($dbhost,$dbuser,$dbpassword,true); /*连接数据库*/ 
$this->_link or $this->errmsg('无法连接MysqL服务器!'); /*是否连接成功*/ 
if ($this->version() > '4.1') { /*检查数据库版本*/ 
$this->query('set names '.$charset); /*设置数据库编码*/ 
} 
/*打开数据库*/
MysqL_select_db($dbname,$this->_link) or $this->errmsg('无法连接数据库!'); 
}
/*执行数据库操作*/ 
public function query($sql) { 
$result = MysqL_query($sql,$this->_link); 
$result or $this->errmsg('执行sql语句错误!'); 
return $result; 
}
/*返回根据从结果集取得的行生成的数组*/ 
/*MysqL_BOTH 得到一个同时包含关联和数字索引的数组 (如同 MysqL_fetch_array())*/ 
/*MysqL_ASSOC 得到一个同时包含关联和数字索引的数组 (如同 MysqL_fetch_assoc())*/ 
/*MysqL_NUM 得到一个同时包含关联和数字索引的数组 (如同 MysqL_fetch_row())*/ 
public function fetch_array($result,$type = MysqL_ASSOC) {
return MysqL_fetch_array($result,$type); 
}
/*返回根据所取得的行生成的对象*/ 
public function fetch_object($result) { 
return MysqL_fetch_object($result); 
}
/*取得前一次 MysqL 操作所影响的记录行数*/ 
public function affected_rows() { 
return MysqL_affected_rows($this->_link); 
}
/* 释放结果内存*/ 
public function free_result($result) { 
return MysqL_free_result($result); 
}
/* 取得结果集中行的数目*/ 
public function num_rows($result) { 
return MysqL_num_rows($result); 
}
/* 取得结果集中字段的数目*/ 
public function num_fields($result) { 
return MysqL_num_fields($result); 
}
/*取得上一步 INSERT 操作产生的 ID*/ 
public function insert_id() { 
return MysqL_insert_id($this->_link); 
}
/* 发出MysqL执行错误*/ 
private function errmsg($msg) { 
$message = '<strong>一个MysqL错误发生!</strong><br />'; 
$message .= '<strong>错误号:</strong>'. MysqL_errno($this->_link) .'<br />'; 
$message .= '<strong>错误描述:</strong>'. $msg . MysqL_error($this->_link) .'<br />'; 
$message .= '<strong>错误时间:</strong>'. date('Y-m-d H:i:s'); 
exit($message); 
}
/*返回连接的标识*/ 
public function link_id() { 
return $this->_link; 
}
/*返回数据库服务器版本*/ 
public function version() { 
return MysqL_get_server_info($this->_link); 
}
/*获得客户端真实的IP地址*/ 
function getip() { 
if(getenv(HTTP_CLIENT_IP) && strcasecmp(getenv(HTTP_CLIENT_IP),unkNown)) { 
$ip = getenv(HTTP_CLIENT_IP); 
}elseif(getenv(HTTP_X_FORWARDED_FOR) && strcasecmp(getenv(HTTP_X_FORWARDED_FOR),unkNown)) { 
$ip = getenv(HTTP_X_FORWARDED_FOR); 
}elseif(getenv(REMOTE_ADDR) && strcasecmp(getenv(REMOTE_ADDR),unkNown)) { 
$ip = getenv(REMOTE_ADDR); 
}elseif(isset ($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'],unkNown)) { $ip = unkNown;
$ip = $_SERVER['REMOTE_ADDR']; 
}else{ 
} 
return ($ip); 
} 
} 

/***   来自编程之家 jb51.cc(jb51.cc)   ***/

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...