站长论坛
标题:
discuz论坛[版本5.0.0]的数据库基本操作中标志为红色的函数
[打印本页]
作者:
tzlink
时间:
2007-9-30 15:29
标题:
discuz论坛[版本5.0.0]的数据库基本操作中标志为红色的函数
<?php
/*
[Discuz!] (C)2001-2006 Comsenz Inc.
This is NOT a freeware, use is subject to license terms
$RCSfile: db_mysql.class.php,v $
$Revision: 1.20.4.1 $
$Date: 2006/09/01 06:15:00 $
*/
if(!defined('IN_DISCUZ')) {
exit('Access Denied');
}
class dbstuff {
var $querynum = 0;
function connect($dbhost, $dbuser, $dbpw, $dbname = '', $pconnect = 0)
{
if($pconnect)
{
if(!@mysql_pconnect($dbhost, $dbuser, $dbpw))
{
$this->halt('Can not connect to MySQL server');
}
}
else
{
if(!@mysql_connect($dbhost, $dbuser, $dbpw))
{
$this->halt('Can not connect to MySQL server');
}
}
if($this->version() > '4.1')
{
global $charset, $dbcharset;
if(!$dbcharset && in_array(strtolower($charset), array('gbk', 'big5', 'utf-8')))
{
$dbcharset = str_replace('-', '', $charset);
}
if($dbcharset)
{
mysql_query("SET character_set_connection=$dbcharset, character_set_results=$dbcharset, character_set_client=binary");}
if($this->version() > '5.0.1')
{
mysql_query("SET sql_mode=''");
}
}
if($dbname)
{
mysql_select_db($dbname);
}
}
function select_db($dbname) {
return mysql_select_db($dbname);
}
function fetch_array($query, $result_type = MYSQL_ASSOC) {
return mysql_fetch_array($query, $result_type);
}
function query($sql, $type = '') {
global $debug, $discuz_starttime, $sqldebug;
$func = $type == 'UNBUFFERED' && @function_exists('mysql_unbuffered_query') ?
'mysql_unbuffered_query' : 'mysql_query';
if(!($query = $func($sql)) && $type != 'SILENT') {
$this->halt('MySQL Query Error', $sql);
}
$this->querynum++;
return $query;
}
function affected_rows() {
return mysql_affected_rows();
}
function error() {
return mysql_error();
}
function errno() {
return intval(mysql_errno());
}
function result($query, $row) {
$query = @mysql_result($query, $row);
return $query;
}
function num_rows($query) {
$query = mysql_num_rows($query);
return $query;
}
function num_fields($query) {
return mysql_num_fields($query);
}
function free_result($query) {
return mysql_free_result($query);
}
function insert_id() {
$id = mysql_insert_id();
return $id;
}
function fetch_row($query) {
$query = mysql_fetch_row($query);
return $query;
}
function fetch_fields($query) {
return mysql_fetch_field($query);
}
function version() {
return mysql_get_server_info();
}
function close() {
return mysql_close();
}
function halt($message = '', $sql = '') {
require_once DISCUZ_ROOT.'./include/db_mysql_error.inc.php';
}
}
?>
作者:
tzlink
时间:
2007-9-30 15:30
下面MYSQL函数操作中标志为红色的函数[续]
function DBLink($v_host ,$v_user, $v_password,$v_database)
{
mysql_connect($v_host,$v_user,$v_password) or die("无法连接MySql服务器$host");
mysql_query("SET character_set_connection=latin1, character_set_results=latin1, character_set_client=binary");
mysql_select_db($v_database) or die("无法打开打开数据库$database ");
}
###################################连接MySQL服务器操作函数############################
class DBReader
{
var $m_query,$dbcharset;
function execute($v_sql)
{
$this->m_query = mysql_query($v_sql) or die("your mysql query error!");
return $this->m_query;
}
function reader()
{
$query = $this->m_query;
return mysql_fetch_array($query);
}
function readerone()
{
$query = $this->m_query;
return mysql_fetch_row($query);
}
function countnum()
{
$query = $this->m_query;
$num = mysql_num_rows($query);
return $num;
}
function fetch_fields()
{
$query = $this->m_query;
return mysql_fetch_field($query);
}
function version() {
return mysql_get_server_info();
}
function close() {
return mysql_close();
}
}
欢迎光临 站长论坛 (http://www.tzlink.com/bbs/)
Powered by Discuz! X3.2