phpwind database.php,phpwind中的数据库操作类_php技巧

phpwind中的数据库操作类_php技巧

/*来源:phpwind.net*/

Class DB {

var $query_num = 0;

function DB($dbhost, $dbuser, $dbpw, $dbname, $pconnect = 0) {

$this->connect($dbhost, $dbuser, $dbpw, $dbname, $pconnect);

}

function connect($dbhost, $dbuser, $dbpw, $dbname, $pconnect = 0) {

$pconnect==0 ? @mysql_connect($dbhost, $dbuser, $dbpw) : @mysql_pconnect($dbhost, $dbuser, $dbpw);

mysql_errno()!=0 && $this->halt("Connect($pconnect) to MySQL failed");

if($this->server_info() > '4.1' && $GLOBALS['charset']){

mysql_query("SET NAMES '".$GLOBALS['charset']."'");

}

if($this->server_info() > '5.0'){

mysql_query("SET sql_mode=''");

}

if($dbname) {

if (!@mysql_select_db($dbname)){

$this->halt('Cannot use database');

}

}

}

function close() {

return mysql_close();

}

function select_db($dbname){

if (!@mysql_select_db($dbname)){

$this->halt('Cannot use database');

}

}

function server_info(){

return mysql_get_server_info();

}

function query($SQL,$method='') {

$GLOBALS['PW']=='pw_' or $SQL=str_replace('pw_',$GLOBALS['PW'],$SQL);

if($method=='U_B' && function_exists('mysql_unbuffered_query')){

$query = mysql_unbuffered_query($SQL);

}else{

$query = mysql_query($SQL);

}

$this->query_num++;

//echo $SQL.'

'.$this->query_num.'

';

if (!$query) $this->halt('Query Error: ' . $SQL);

return $query;

}

function get_one($SQL){

$query=$this->query($SQL,'U_B');

$rs =& mysql_fetch_array($query, MYSQL_ASSOC);

return $rs;

}

function pw_update($SQL_1,$SQL_2,$SQL_3){

$rt=$this->get_one($SQL_1);

if($rt){

$this->update($SQL_2);

} else{

$this->update($SQL_3);

}

}

function update($SQL) {

$GLOBALS['PW']=='pw_' or $SQL=str_replace('pw_',$GLOBALS['PW'],$SQL);

if($GLOBALS['db_lp']==1){

if(substr($SQL,0,7)=='REPLACE'){

$SQL=substr($SQL,0,7).' LOW_PRIORITY'.substr($SQL,7);

} else{

$SQL=substr($SQL,0,6).' LOW_PRIORITY'.substr($SQL,6);

}

}

if(function_exists('mysql_unbuffered_query')){

$query = mysql_unbuffered_query($SQL);

}else{

$query = mysql_query($SQL);

}

$this->query_num++;

//echo $SQL.'

'.$this->query_num.'

';

if (!$query) $this->halt('Update Error: ' . $SQL);

return $query;

}

function fetch_array($query, $result_type = MYSQL_ASSOC) {

return mysql_fetch_array($query, $result_type);

}

function affected_rows() {

return mysql_affected_rows();

}

function num_rows($query) {

$rows = mysql_num_rows($query);

return $rows;

}

function free_result($query) {

return mysql_free_result($query);

}

function insert_id() {

$id = mysql_insert_id();

return $id;

}

function halt($msg='') {

require_once(R_P.'require/db_mysql_error.php');

new DB_ERROR($msg);

}

}

?>

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值