| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
g6d7
9年前发布

php连接mysql操作类

<?php        /*      * 名称: 数据库连接类      * 介绍: 适用于各种数据库链接      */        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);            }        }   ?>