求一个PHP连接MYSQL的类 如标题,求一个PHP连接MYSQL的类,谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 别人问到,不要说是我帖的class dbstuff { var $version = ''; var $querynum = 0; var $link = null; //$halt 停止 function connect($dbhost, $dbuser, $dbpw, $dbname = '', $pconnect = 0, $halt = TRUE, $dbcharset2 = '') { $func = empty($pconnect) ? 'mysql_connect' : 'mysql_pconnect'; if(!$this->link = @$func($dbhost, $dbuser, $dbpw, 1)) { //连接失败 $halt && $this->halt('Can not connect to MySQL server'); } else { //连接成功 if($this->version() > '4.1') { global $charset, $dbcharset; $dbcharset = $dbcharset2 ? $dbcharset2 : $dbcharset; $dbcharset = !$dbcharset && in_array(strtolower($charset), array('gbk', 'big5', 'utf-8')) ? str_replace('-', '', $charset) : $dbcharset; $serverset = $dbcharset ? 'character_set_connection='.$dbcharset.', character_set_results='.$dbcharset.', character_set_client=binary' : ''; $serverset .= $this->version() > '5.0.1' ? ((empty($serverset) ? '' : ',').'sql_mode=\'\'') : ''; $serverset && mysql_query("SET $serverset", $this->link); } $dbname && @mysql_select_db($dbname, $this->link); } } function select_db($dbname) { return mysql_select_db($dbname, $this->link); } function fetch_array($query, $result_type = MYSQL_ASSOC) { return mysql_fetch_array($query, $result_type); } function fetch_first($sql) { return $this->fetch_array($this->query($sql)); } function result_first($sql) { return $this->result($this->query($sql), 0); } function query($sql, $type = '') { global $debug, $discuz_starttime, $sqldebug, $sqlspenttimes; if(defined('SYS_DEBUG') && SYS_DEBUG) { @include_once DISCUZ_ROOT.'./include/debug.func.php'; sqldebug($sql); } $func = $type == 'UNBUFFERED' && @function_exists('mysql_unbuffered_query') ? 'mysql_unbuffered_query' : 'mysql_query'; if(!($query = $func($sql, $this->link))) { if(in_array($this->errno(), array(2006, 2013)) && substr($type, 0, 5) != 'RETRY') { $this->close(); require DISCUZ_ROOT.'./config.inc.php'; $this->connect($dbhost, $dbuser, $dbpw, $dbname, $pconnect, true, $dbcharset); $this->query($sql, 'RETRY'.$type); } elseif($type != 'SILENT' && substr($type, 5) != 'SILENT') { $this->halt('MySQL Query Error', $sql); } } $this->querynum++; return $query; } function affected_rows() { return mysql_affected_rows($this->link); } function error() { return (($this->link) ? mysql_error($this->link) : mysql_error()); } function errno() { return intval(($this->link) ? mysql_errno($this->link) : mysql_errno()); } function result($query, $row = 0) { $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() { return ($id = mysql_insert_id($this->link)) >= 0 ? $id : $this->result($this->query("SELECT last_insert_id()"), 0); } function fetch_row($query) { $query = mysql_fetch_row($query); return $query; } function fetch_fields($query) { return mysql_fetch_field($query); } function version() { if(empty($this->version)) { $this->version = mysql_get_server_info($this->link); } return $this->version; } function close() { return mysql_close($this->link); } function halt($message = '', $sql = '') { define('CACHE_FORBIDDEN', TRUE); require_once DISCUZ_ROOT.'./include/db_mysql_error.inc.php'; }} db_mysql_error.inc.php文件<?php$timestamp = time();$errmsg = '';$dberror = $this->error();$dberrno = $this->errno();if($dberrno == 1114) {?><html><head><title>Max Onlines Reached</title></head><body bgcolor="#FFFFFF"><table cellpadding="0" cellspacing="0" border="0" width="600" align="center" height="85%"> <tr align="center" valign="middle"> <td> <table cellpadding="10" cellspacing="0" border="0" width="80%" align="center" style="font-family: Verdana, Tahoma; color: #666666; font-size: 9px"> <tr> <td valign="middle" align="center" bgcolor="#EBEBEB"> <br /><b style="font-size: 10px">Forum onlines reached the upper limit</b> <br /><br /><br />Sorry, the number of online visitors has reached the upper limit. <br />Please wait for someone else going offline or visit us in idle hours. <br /><br /> </td> </tr> </table> </td> </tr></table></body></html><? exit();} else { if($message) { $errmsg = "<b>Discuz! info</b>: $message\n\n"; } if(isset($GLOBALS['_DSESSION']['discuz_user'])) { $errmsg .= "<b>User</b>: ".htmlspecialchars($GLOBALS['_DSESSION']['discuz_user'])."\n"; } $errmsg .= "<b>Time</b>: ".gmdate("Y-n-j g:ia", $timestamp + ($GLOBALS['timeoffset'] * 3600))."\n"; $errmsg .= "<b>Script</b>: ".$GLOBALS['PHP_SELF']."\n\n"; if($sql) { $errmsg .= "<b>SQL</b>: ".htmlspecialchars($sql)."\n"; } $errmsg .= "<b>Error</b>: $dberror\n"; $errmsg .= "<b>Errno.</b>: $dberrno"; echo "</table></table></table></table></table>\n"; echo "<p style=\"font-family: Verdana, Tahoma; font-size: 11px; background: #FFFFFF;\">"; echo nl2br(str_replace($GLOBALS['tablepre'], '[Table]', $errmsg)); if($GLOBALS['adminemail']) { $errlog = array(); if(@$fp = fopen(DISCUZ_ROOT.'./forumdata/dberror.log', 'r')) { while((!feof($fp)) && count($errlog) < 20) { $log = explode("\t", fgets($fp, 50)); if($timestamp - $log[0] < 86400) { $errlog[$log[0]] = $log[1]; } } fclose($fp); } if(!in_array($dberrno, $errlog)) { $errlog[$timestamp] = $dberrno; @$fp = fopen(DISCUZ_ROOT.'./forumdata/dberror.log', 'w'); @flock($fp, 2); foreach(array_unique($errlog) as $dateline => $errno) { @fwrite($fp, "$dateline\t$errno"); } @fclose($fp); if(function_exists('errorlog')) { errorlog('MySQL', basename($GLOBALS['_SERVER']['PHP_SELF'])." : $dberror - ".cutstr($sql, 120), 0); } if($GLOBALS['dbreport']) { echo "<br /><br />An error report has been dispatched to our administrator."; @sendmail($GLOBALS['adminemail'], '[Discuz!] MySQL Error Report', "There seems to have been a problem with the database of your Discuz! Board\n\n". strip_tags($errmsg)."\n\n". "Please check-up your MySQL server and forum scripts, similar errors will not be reported again in recent 24 hours\n". "If you have troubles in solving this problem, please visit Discuz! Community http://www.Discuz.net."); } } else { echo '<br /><br />Similar error report has been dispatched to administrator before.'; } } echo '</p>'; echo '<p style="font-family: Verdana, Tahoma; font-size: 12px; background: #FFFFFF;"><a href="http://faq.comsenz.com/?type=mysql&dberrno='.$dberrno.'&dberror='.rawurlencode($dberror).'" target="_blank">到 http://faq.comsenz.com 搜索此错误的解决方案</a></p>'; exit();}?> DISCUZ_ROOT都出来了,怎么用啊,贴也要修改一下 class mysqldb extends mysqli{ public $conn_flag; public $error_info; public function __construct( $db_host, $db_user, $db_password, $db_name ) { @parent::__construct( $db_host, $db_user, $db_password, $db_name ); $this->error_info = ''; $this->conn_flag = true; if ( mysqli_connect_errno() ) { $this->conn_flag = false; $this->error_info = mysqli_connect_error(); } } public function __destruct() { if ( !mysqli_connect_errno() ) { $this->close(); } }} <?/*************************************************************************** * Mysql.Class.php * ------------------------- * begin : Thursday, Apr 27, 2006 * copyright : (C) 2002 The ReQi.com * email : [email protected] * * $Id: Mysql.Class.php,v 1.0.2.1 2006/04/27 16:23:20 Syber Exp $ * ***************************************************************************//*************************************************************************** * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * ***************************************************************************//*************************************************************************** * * Thanks my love,my all,my darling. * ***************************************************************************//*************************************************************************** * * Example: * $mysql = new MySql_Class( 'dbuser', 'dbpassword', 'dbname', 'dbhost' ); * $mysql -> DBConnect(); * $mysql -> Post( 'UPDATE $table SET $column = $value WHERE $Expr' ); * $row = $mysql -> Open( 'SELECT $columns FROM $table WHERE $Expr' ); * $rows = $mysql -> Open( 'SELECT $columns FROM $table WHERE $Expr', True, True ); * ***************************************************************************/Class MySql_Class{ var $Conn; var $DbUser; var $DbPass; var $DbName; var $DbHost; var $DbPort; var $DbResult; var $row = array(); var $rowset = array(); var $num_queries = 0; Function MySql_Class( $user, $passwd, $db, $host, $port = 3306 ) { $this -> DbUser = $user; $this -> DbPass = $passwd; $this -> DbName = $db; $this -> DbHost = $host; $this -> DbPort = $port; } // end Function // // Constructor // Function DBConnect( $persistency = false ) { if( $persistency ) { $this -> Conn = @mysql_pconnect( $this -> DbHost . ':' . $this -> DbPort, $this -> DbUser, $this -> DbPass ); } else { $this->Conn = @mysql_connect( $this -> DbHost . ':' . $this -> DbPort, $this -> DbUser, $this -> DbPass ); } if( $this -> Conn ) { if( DbName != "" ) { $dbselect = @mysql_select_db( $this -> DbName ); if( !$dbselect ) { @mysql_close( $this -> Conn ); $this -> Conn = $dbselect; } } return $this -> Conn; } else { return false; } } // end Function Function DBClose() { if( $this -> Conn ) { if( $this -> DbResult ) { @mysql_free_result( $this -> DbResult ); } $result = @mysql_close( $this -> Conn ); return $result; } else { return false; } } // end Function // // Base query method // When $Affectedrows = true,then return Affectedrows // Function Post( $sql, $Affectedrows = false ) { unset( $this -> DbResult ); if( $sql != "" ) { $this -> num_queries++; $this -> DbResult = @mysql_query( $sql, $this -> Conn ); } if( $this -> DbResult ) { unset( $this -> row[ $this -> DbResult ] ); unset( $this -> rowset[ $this -> DbResult ] ); return $Affectedrows ? $this -> AffectedRows() : $this -> DbResult; } else { return false; } } // end Function // // Base query method // $MuchRows, get one row of false, much rows of true. // $OutputFetch, get field row('s) of true. // Function Open( $sql, $MuchRows = false, $OutputFetch = false ) { if ( $this -> Post( $sql ) ) { if ( $MuchRows ) { if ( $OutputFetch ) { return $this -> SQL_FetchRowSet(); } else { return $this -> SQL_ArrayRowSet(); } } else { if ( $OutputFetch ) { return $this -> SQL_FetchRow(); } else { return $this -> SQL_ArrayRow(); } } } else { return false; } } // end Function Function SQL_FetchRow( $query_id = 0 ) { if( !$query_id ) { $query_id = $this -> DbResult; } if( $query_id ) { $this -> row[ $query_id ] = @mysql_fetch_array( $query_id ); return $this -> row[ $query_id ]; } else { return false; } } // end Function Function SQL_FetchRowSet( $query_id = 0 ) { if( !$query_id ) { $query_id = $this -> DbResult; } if( $query_id ) { unset( $this -> rowset[ $query_id ] ); unset( $this -> row[ $query_id ] ); while( $this -> rowset[ $query_id ] = @mysql_fetch_array( $query_id ) ) { $result[] = $this->rowset[ $query_id ]; } return $result; } else { return false; } } // end Function Function SQL_ArrayRow( $query_id = 0 ) { if( !$query_id ) { $query_id = $this -> DbResult; } if( $query_id ) { $this -> row[ $query_id ] = @mysql_fetch_row( $query_id ); return $this -> row[ $query_id ]; } else { return false; } } // end Function Function SQL_ArrayRowSet( $query_id = 0 ) { if( !$query_id ) { $query_id = $this -> DbResult; } if( $query_id ) { unset( $this -> rowset[ $query_id ] ); unset( $this -> row[ $query_id ] ); while( $this -> rowset[ $query_id ] = @mysql_fetch_row( $query_id ) ) { $result[] = $this->rowset[ $query_id ]; } return $result; } else { return false; } } // end Function Function AffectedRows() { if( $this -> Conn ) { $result = @mysql_affected_rows( $this -> Conn ); return $result; } else { return false; } } // end Function Function SQL_NextID() { if( $this -> Conn) { $result = @mysql_insert_id( $this -> Conn ); return $result; } else { return false; } } // end Function Function SQL_FreeResult( $query_id = 0 ) { if( !$query_id ) { $query_id = $this -> DbResult; } if ( $query_id ) { unset( $this -> row[ $query_id ] ); unset( $this -> rowset[ $query_id ] ); @mysql_free_result( $query_id ); return true; } else { return false; } } // end Function Function SQL_Error($query_id = 0) { $result[ "message" ] = @mysql_error( $this -> Conn); $result[ "code" ] = @mysql_errno( $this -> Conn); return $result; } // end Function} // end Class?> 为什么break不能跳出外层循环 thinkphp无法添加数据到数据库 php如何打包hello文件夹? php无法访问mysql,为什么啊???? 插入数据库 迷惑不解啊???救人啊!!! 初学者(半个月)的一个函数,大家来评论一下,谢谢 PHP中关于三层结构的设计 小弟以前从未涉及过php领域,第一次使用吃了大亏~郁闷,请高手进来看看~100分奉上~关于wow中dkp自动添加的程序 !!!很奇怪地问题,请大家进来帮忙看看 模仿昨天前辈, 火影忍者最新漫画浏览 面翻页痛苦 和大家分享PHP网站开发的乐趣
class dbstuff { var $version = '';
var $querynum = 0;
var $link = null;
//$halt 停止
function connect($dbhost, $dbuser, $dbpw, $dbname = '', $pconnect = 0, $halt = TRUE, $dbcharset2 = '') { $func = empty($pconnect) ? 'mysql_connect' : 'mysql_pconnect';
if(!$this->link = @$func($dbhost, $dbuser, $dbpw, 1)) { //连接失败
$halt && $this->halt('Can not connect to MySQL server');
} else { //连接成功
if($this->version() > '4.1') {
global $charset, $dbcharset;
$dbcharset = $dbcharset2 ? $dbcharset2 : $dbcharset;
$dbcharset = !$dbcharset && in_array(strtolower($charset), array('gbk', 'big5', 'utf-8')) ? str_replace('-', '', $charset) : $dbcharset;
$serverset = $dbcharset ? 'character_set_connection='.$dbcharset.', character_set_results='.$dbcharset.', character_set_client=binary' : '';
$serverset .= $this->version() > '5.0.1' ? ((empty($serverset) ? '' : ',').'sql_mode=\'\'') : '';
$serverset && mysql_query("SET $serverset", $this->link);
}
$dbname && @mysql_select_db($dbname, $this->link);
} } function select_db($dbname) {
return mysql_select_db($dbname, $this->link);
} function fetch_array($query, $result_type = MYSQL_ASSOC) {
return mysql_fetch_array($query, $result_type);
} function fetch_first($sql) {
return $this->fetch_array($this->query($sql));
} function result_first($sql) {
return $this->result($this->query($sql), 0);
} function query($sql, $type = '') { global $debug, $discuz_starttime, $sqldebug, $sqlspenttimes; if(defined('SYS_DEBUG') && SYS_DEBUG) {
@include_once DISCUZ_ROOT.'./include/debug.func.php';
sqldebug($sql);
} $func = $type == 'UNBUFFERED' && @function_exists('mysql_unbuffered_query') ?
'mysql_unbuffered_query' : 'mysql_query';
if(!($query = $func($sql, $this->link))) {
if(in_array($this->errno(), array(2006, 2013)) && substr($type, 0, 5) != 'RETRY') {
$this->close();
require DISCUZ_ROOT.'./config.inc.php';
$this->connect($dbhost, $dbuser, $dbpw, $dbname, $pconnect, true, $dbcharset);
$this->query($sql, 'RETRY'.$type);
} elseif($type != 'SILENT' && substr($type, 5) != 'SILENT') {
$this->halt('MySQL Query Error', $sql);
}
} $this->querynum++;
return $query;
} function affected_rows() {
return mysql_affected_rows($this->link);
} function error() {
return (($this->link) ? mysql_error($this->link) : mysql_error());
} function errno() {
return intval(($this->link) ? mysql_errno($this->link) : mysql_errno());
} function result($query, $row = 0) {
$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() {
return ($id = mysql_insert_id($this->link)) >= 0 ? $id : $this->result($this->query("SELECT last_insert_id()"), 0);
} function fetch_row($query) {
$query = mysql_fetch_row($query);
return $query;
} function fetch_fields($query) {
return mysql_fetch_field($query);
} function version() {
if(empty($this->version)) {
$this->version = mysql_get_server_info($this->link);
}
return $this->version;
} function close() {
return mysql_close($this->link);
} function halt($message = '', $sql = '') {
define('CACHE_FORBIDDEN', TRUE);
require_once DISCUZ_ROOT.'./include/db_mysql_error.inc.php';
}
}
<?php
$timestamp = time();
$errmsg = '';$dberror = $this->error();
$dberrno = $this->errno();if($dberrno == 1114) {?>
<html>
<head>
<title>Max Onlines Reached</title>
</head>
<body bgcolor="#FFFFFF">
<table cellpadding="0" cellspacing="0" border="0" width="600" align="center" height="85%">
<tr align="center" valign="middle">
<td>
<table cellpadding="10" cellspacing="0" border="0" width="80%" align="center" style="font-family: Verdana, Tahoma; color: #666666; font-size: 9px">
<tr>
<td valign="middle" align="center" bgcolor="#EBEBEB">
<br /><b style="font-size: 10px">Forum onlines reached the upper limit</b>
<br /><br /><br />Sorry, the number of online visitors has reached the upper limit.
<br />Please wait for someone else going offline or visit us in idle hours.
<br /><br />
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
<? exit();} else { if($message) {
$errmsg = "<b>Discuz! info</b>: $message\n\n";
}
if(isset($GLOBALS['_DSESSION']['discuz_user'])) {
$errmsg .= "<b>User</b>: ".htmlspecialchars($GLOBALS['_DSESSION']['discuz_user'])."\n";
}
$errmsg .= "<b>Time</b>: ".gmdate("Y-n-j g:ia", $timestamp + ($GLOBALS['timeoffset'] * 3600))."\n";
$errmsg .= "<b>Script</b>: ".$GLOBALS['PHP_SELF']."\n\n";
if($sql) {
$errmsg .= "<b>SQL</b>: ".htmlspecialchars($sql)."\n";
}
$errmsg .= "<b>Error</b>: $dberror\n";
$errmsg .= "<b>Errno.</b>: $dberrno"; echo "</table></table></table></table></table>\n";
echo "<p style=\"font-family: Verdana, Tahoma; font-size: 11px; background: #FFFFFF;\">";
echo nl2br(str_replace($GLOBALS['tablepre'], '[Table]', $errmsg)); if($GLOBALS['adminemail']) {
$errlog = array();
if(@$fp = fopen(DISCUZ_ROOT.'./forumdata/dberror.log', 'r')) {
while((!feof($fp)) && count($errlog) < 20) {
$log = explode("\t", fgets($fp, 50));
if($timestamp - $log[0] < 86400) {
$errlog[$log[0]] = $log[1];
}
}
fclose($fp);
} if(!in_array($dberrno, $errlog)) {
$errlog[$timestamp] = $dberrno;
@$fp = fopen(DISCUZ_ROOT.'./forumdata/dberror.log', 'w');
@flock($fp, 2);
foreach(array_unique($errlog) as $dateline => $errno) {
@fwrite($fp, "$dateline\t$errno");
}
@fclose($fp);
if(function_exists('errorlog')) {
errorlog('MySQL', basename($GLOBALS['_SERVER']['PHP_SELF'])." : $dberror - ".cutstr($sql, 120), 0);
} if($GLOBALS['dbreport']) {
echo "<br /><br />An error report has been dispatched to our administrator.";
@sendmail($GLOBALS['adminemail'], '[Discuz!] MySQL Error Report',
"There seems to have been a problem with the database of your Discuz! Board\n\n".
strip_tags($errmsg)."\n\n".
"Please check-up your MySQL server and forum scripts, similar errors will not be reported again in recent 24 hours\n".
"If you have troubles in solving this problem, please visit Discuz! Community http://www.Discuz.net.");
} } else {
echo '<br /><br />Similar error report has been dispatched to administrator before.';
} }
echo '</p>';
echo '<p style="font-family: Verdana, Tahoma; font-size: 12px; background: #FFFFFF;"><a href="http://faq.comsenz.com/?type=mysql&dberrno='.$dberrno.'&dberror='.rawurlencode($dberror).'" target="_blank">到 http://faq.comsenz.com 搜索此错误的解决方案</a></p>'; exit();}?>
class mysqldb extends mysqli
{
public $conn_flag;
public $error_info; public function __construct( $db_host, $db_user, $db_password, $db_name )
{
@parent::__construct( $db_host, $db_user, $db_password, $db_name );
$this->error_info = '';
$this->conn_flag = true;
if ( mysqli_connect_errno() )
{
$this->conn_flag = false;
$this->error_info = mysqli_connect_error();
}
} public function __destruct()
{
if ( !mysqli_connect_errno() )
{
$this->close();
}
}}
/***************************************************************************
* Mysql.Class.php
* -------------------------
* begin : Thursday, Apr 27, 2006
* copyright : (C) 2002 The ReQi.com
* email : [email protected]
*
* $Id: Mysql.Class.php,v 1.0.2.1 2006/04/27 16:23:20 Syber Exp $
*
***************************************************************************//***************************************************************************
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
***************************************************************************//***************************************************************************
*
* Thanks my love,my all,my darling.
*
***************************************************************************/
/***************************************************************************
*
* Example:
* $mysql = new MySql_Class( 'dbuser', 'dbpassword', 'dbname', 'dbhost' );
* $mysql -> DBConnect();
* $mysql -> Post( 'UPDATE $table SET $column = $value WHERE $Expr' );
* $row = $mysql -> Open( 'SELECT $columns FROM $table WHERE $Expr' );
* $rows = $mysql -> Open( 'SELECT $columns FROM $table WHERE $Expr', True, True );
*
***************************************************************************/
Class MySql_Class
{ var $Conn;
var $DbUser;
var $DbPass;
var $DbName;
var $DbHost;
var $DbPort;
var $DbResult;
var $row = array();
var $rowset = array();
var $num_queries = 0; Function MySql_Class( $user, $passwd, $db, $host, $port = 3306 )
{
$this -> DbUser = $user;
$this -> DbPass = $passwd;
$this -> DbName = $db;
$this -> DbHost = $host;
$this -> DbPort = $port;
} // end Function //
// Constructor
//
Function DBConnect( $persistency = false )
{
if( $persistency )
{
$this -> Conn = @mysql_pconnect( $this -> DbHost . ':' . $this -> DbPort, $this -> DbUser, $this -> DbPass );
}
else
{
$this->Conn = @mysql_connect( $this -> DbHost . ':' . $this -> DbPort, $this -> DbUser, $this -> DbPass );
} if( $this -> Conn )
{
if( DbName != "" )
{
$dbselect = @mysql_select_db( $this -> DbName );
if( !$dbselect )
{
@mysql_close( $this -> Conn );
$this -> Conn = $dbselect;
}
}
return $this -> Conn;
}
else
{
return false;
}
} // end Function Function DBClose()
{
if( $this -> Conn )
{
if( $this -> DbResult )
{
@mysql_free_result( $this -> DbResult );
}
$result = @mysql_close( $this -> Conn );
return $result;
}
else
{
return false;
}
} // end Function //
// Base query method
// When $Affectedrows = true,then return Affectedrows
//
Function Post( $sql, $Affectedrows = false )
{
unset( $this -> DbResult );
if( $sql != "" )
{
$this -> num_queries++;
$this -> DbResult = @mysql_query( $sql, $this -> Conn );
}
if( $this -> DbResult )
{
unset( $this -> row[ $this -> DbResult ] );
unset( $this -> rowset[ $this -> DbResult ] );
return $Affectedrows ? $this -> AffectedRows() : $this -> DbResult;
}
else
{
return false;
}
} // end Function //
// Base query method
// $MuchRows, get one row of false, much rows of true.
// $OutputFetch, get field row('s) of true.
//
Function Open( $sql, $MuchRows = false, $OutputFetch = false )
{
if ( $this -> Post( $sql ) )
{
if ( $MuchRows )
{
if ( $OutputFetch )
{
return $this -> SQL_FetchRowSet();
}
else
{
return $this -> SQL_ArrayRowSet();
}
}
else
{
if ( $OutputFetch )
{
return $this -> SQL_FetchRow();
}
else
{
return $this -> SQL_ArrayRow();
}
}
}
else
{
return false;
}
} // end Function Function SQL_FetchRow( $query_id = 0 )
{
if( !$query_id )
{
$query_id = $this -> DbResult;
}
if( $query_id )
{
$this -> row[ $query_id ] = @mysql_fetch_array( $query_id );
return $this -> row[ $query_id ];
}
else
{
return false;
}
} // end Function Function SQL_FetchRowSet( $query_id = 0 )
{
if( !$query_id )
{
$query_id = $this -> DbResult;
}
if( $query_id )
{
unset( $this -> rowset[ $query_id ] );
unset( $this -> row[ $query_id ] );
while( $this -> rowset[ $query_id ] = @mysql_fetch_array( $query_id ) )
{
$result[] = $this->rowset[ $query_id ];
}
return $result;
}
else
{
return false;
}
} // end Function Function SQL_ArrayRow( $query_id = 0 )
{
if( !$query_id )
{
$query_id = $this -> DbResult;
}
if( $query_id )
{
$this -> row[ $query_id ] = @mysql_fetch_row( $query_id );
return $this -> row[ $query_id ];
}
else
{
return false;
}
} // end Function Function SQL_ArrayRowSet( $query_id = 0 )
{
if( !$query_id )
{
$query_id = $this -> DbResult;
}
if( $query_id )
{
unset( $this -> rowset[ $query_id ] );
unset( $this -> row[ $query_id ] );
while( $this -> rowset[ $query_id ] = @mysql_fetch_row( $query_id ) )
{
$result[] = $this->rowset[ $query_id ];
}
return $result;
}
else
{
return false;
}
} // end Function Function AffectedRows()
{
if( $this -> Conn )
{
$result = @mysql_affected_rows( $this -> Conn );
return $result;
}
else
{
return false;
}
} // end Function Function SQL_NextID()
{
if( $this -> Conn)
{
$result = @mysql_insert_id( $this -> Conn );
return $result;
}
else
{
return false;
}
} // end Function Function SQL_FreeResult( $query_id = 0 )
{
if( !$query_id )
{
$query_id = $this -> DbResult;
} if ( $query_id )
{
unset( $this -> row[ $query_id ] );
unset( $this -> rowset[ $query_id ] ); @mysql_free_result( $query_id ); return true;
}
else
{
return false;
}
} // end Function Function SQL_Error($query_id = 0)
{
$result[ "message" ] = @mysql_error( $this -> Conn);
$result[ "code" ] = @mysql_errno( $this -> Conn); return $result;
} // end Function} // end Class
?>