查看: 6349|回复: 1
打印 上一主题 下一主题

discuz论坛[版本5.0.0]的数据库基本操作中标志为红色的函数

[复制链接]
跳转到指定楼层
1#
发表于 2007-9-30 15:29:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
台州网址导航
<?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';
        }
}

?>
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖
台州维博网络(www.tzweb.com)专门运用PHP+MYSQL/ASP.NET+MSSQL技术开发网站门户平台系统等。
2#
 楼主| 发表于 2007-9-30 15:30:12 | 只看该作者
台州网址导航
下面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();
        }
}
台州维博网络(www.tzweb.com)专门运用PHP+MYSQL/ASP.NET+MSSQL技术开发网站门户平台系统等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

网站推广
关于我们
  • 台州朗动科技(Tzweb.com)拥有多年开发网站平台系统门户手机客户端等业务的成功经验。主要从事:政企网站,系统平台,微信公众号,各类小程序,手机APP客户端,浙里办微应用,浙政钉微应用、主机域名、虚拟空间、后期维护等服务,满足不同企业公司的需求,是台州地区领先的网络技术服务商!

Hi,扫描关注我

Copyright © 2005-2026 站长论坛 All rights reserved

Powered by 站长论坛 with TZWEB Update Techonolgy Support

快速回复 返回顶部 返回列表