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); } }?></pre>
本文由用戶 g6d7 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!