当前位置: 首页 > 图文教程 > 网络编程 > PHP > phpwind中的数据库操作类

PHP
discuz安全提问算法
PHP静态新闻列表自动生成代码
用PHP实现图象锐化代码
PHP生成月历代码
用PHP实现的随机广告显示代码
用PHP实现维护文件代码
关于在php.ini中添加extension=php_mysqli.dll指令的说明
PHP 中的批处理的实现
木翼下载系统中说明的PHP安全配置方法
php为什么选mysql作为数据库? Mysql 创建用户方法
PHP如何编写易读的代码
PHP 优化配置——加速你的VBB,phpwind,Discuz,IPB,MolyX
php下一个阿拉伯数字转中文数字的函数
Discuz5.5.0代码高亮显示+运行代码框合成插件 下载
PHP+FLASH实现上传文件进度条相关文件 下载
发布一个迷你php+AJAX聊天程序[聊天室]提供下载
在普通HTTP上安全地传输密码
php中ob(Output Buffer 输出缓冲)函数使用方法
php 用sock技术发送邮件的函数
真正的ZIP文件操作类(php)

PHP 中的 phpwind中的数据库操作类


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 50 ::
收藏到网摘: n/a


<?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.'<br>'.$this->query_num.'<br>';
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.'<br>'.$this->query_num.'<br>';
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);
}
}
?>