📄 mysql.class.php
字号:
<?php
##
# Project: PHPDisk
# This is NOT a freeware, use is subject to license terms.
#
# Site: http://www.phpdisk.com
#
# $Id: mysql.class.php 232 2009-03-08 04:54:57Z along $
#
# Copyright (C) 2008-2009 PHPDisk Team. All Rights Reserved.
#
##
class cls_mysql{
var $_l;
var $querycount = 0;
function connect($dbhost, $dbusr, $dbpwd, $dbname = '',$pconnect = 0){
global $dbcharset;
$connmode = $pconnect == 1 ? 'mysql_pconnect' : 'mysql_connect';
if(!$this->_l = @$connmode($dbhost, $dbusr, $dbpwd,$pconnect)){
exit ($this->error ('Can not connect MySQL server!'));
}
if($this->version() > '4.1') {
mysql_query("SET character_set_connection=utf8, character_set_results=utf8, character_set_client=binary;", $this->_l);
}else{
mysql_query("set names utf8;",$this->_l);
}
if($this->version() > '5.0') {
mysql_query("SET sql_mode=''" , $this->_l);
}
if($dbname){
if(!mysql_select_db($dbname , $this->_l)){
exit ($this->error ('Cannot select database!'));
}
}
return $this->_l;
}
function select_db($dbname){
return mysql_select_db($dbname , $this->_l);
}
function list_tables($dbname){
return mysql_list_tables($dbname,$this->_l);
}
function query($sql , $type = ''){
$func = $type == 'UNBUFFERED' ? 'mysql_unbuffered_query' : 'mysql_query';
if(!($s = $func($sql , $this->_l)) && $type != 'SILENT'){
exit ($this->error ($sql));
}
$this->querycount++;
return $s;
}
function query_unbuffered($sql) {
$s = $this->query($sql, 'UNBUFFERED');
return $s;
}
function fetch_one_array($sql) {
$result = $this->query($sql);
$record = $this->fetch_array($result);
return $record;
}
function fetch_array($s, $result_type = MYSQL_ASSOC) {
return mysql_fetch_array($s, $result_type);
}
function affected_rows() {
return mysql_affected_rows($this->_l);
}
function num_rows($s) {
return mysql_num_rows($s);
}
function num_fields($s) {
return mysql_num_fields($s);
}
function result($s, $row) {
return mysql_result($s, $row);
}
function insert_id() {
return mysql_insert_id($this->_l);
}
function fetch_row($s) {
return mysql_fetch_row($s);
}
function escape($s){
if (function_exists ('mysql_real_escape_string')){
return mysql_real_escape_string ($s, $this->_l);
}
return addslashes ($s);
}
function sql_array ($arr){
$ins = array();
reset($arr);
while(list($c, $v) = each($arr)){
$ins[] = ($v === NULL ? sprintf('`%s`=NULL', $c) : sprintf('`%s`=\'%s\'', $c, $v));
}
return implode(', ', $ins);
}
function version() {
return mysql_get_server_info($this->_l);
}
function free($q){
return @mysql_free_result($q);
}
function close() {
return @mysql_close($this->_l);
}
function get_error() {
return mysql_error($this->_l);
}
function error ($s){
global $onlineip;
$onlineip = $onlineip ? $onlineip : $_SERVER['REMOTE_ADDR'];
$access_str = '<?php exit(); ?>';
$str = '';
$str .= 'MySQL: ' . mysql_error ($this->_l) .' : '.mysql_errno($this->_l).LF;
$str .= 'Query: ' .$s.LF;
$str .= 'USER_AGENT: '.$_SERVER['HTTP_USER_AGENT'].LF;
$str .= 'Time: '.date("Y-m-d H:i:s",time()).LF;
$str .= 'IP: '.$onlineip.LF;
$str .= "-------------------------".LF;
$log_file = './system/db_log.php';
$fp = fopen($log_file,"r");
$fsize = filesize($log_file);
$content = fread($fp, $fsize);
fclose($fp);
if(strpos($content,$access_str) ===false){
$str = $access_str.LF.$str;
}
$fp = fopen($log_file,'a+');
if (!$fp) {
exit("Can not open file <b>$log_file</b> .");
}
if(is_writable($log_file)){
if(!fwrite($fp,$str)){
exit("Can not write file <b>$log_file</b> .");
}
}else{
exit("Can not write file <b>$log_file</b> .");
}
fclose($fp);
$rtn = '<p>'.str_replace(LF,'<br>',$str).'</p>';
return $rtn;
}
}
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -