-
-
-
-
-
-
-
-
-
class DB_MYSQL
-
{
-
-
private $Host = 'localhost';
-
private $Database = 'db_name';
-
private $User = 'user';
-
private $Password = 'password';
-
-
private $Link_Id = 0;
-
private $Query_Id = 0;
-
private $Row_Result = array();
-
private $Field_Result = array();
-
private $Affected_Rows;
-
private $Rows;
-
private $Fields;
-
private $Row_Postion = 0;
-
public $Insert_Id = 0;
-
-
/**** 构造函数 ****/
-
function __construct()
-
{
-
$this->connect();
-
}
-
-
function __destruct()
-
{
-
@mysql_free_result($this->Query_Id);
-
mysql_close($this->Link_Id);
-
}
-
-
function connect($Database = '',$Host = '',$User = '',$Password = '')
-
{
-
$Database = $Database == '' ? $this->Database : $Database;
-
$Host = $Host == '' ? $this->Host : $Host;
-
$User = $User == '' ? $this->User : $User;
-
$Password = $Password == '' ? $this->Password : $Password;
-
-
if(0 == $this->Link_Id)
-
{
-
$this->Link_Id = @mysql_pconnect($Host,$User,$Password);
-
if(!$this->Link_Id)
-
{
-
$this->halt('连接数据库服务端失败!');
-
}
-
if(!mysql_select_db($this->Database,$this->Link_Id))
-
{
-
$this->halt('不能打开指定的数据库:'.$this->Database);
-
}
-
}
-
return $this->Link_Id;
-
}
-
-
function free()
-
{
-
if(@mysql_free_result($this->Query_Id))
-
{
-
unset($this->Row_Result);
-
}
-
$this->Query_Id = 0;
-
}
-
-
function query($Query_String)
-
{
-
-
if($this->Query_Id)
-
{
-
$this->free();
-
}
-
if(0 == $this->Link_Id)
-
{
-
$this->connect();
-
}
-
-
@mysql_query('set names gb2312');
-
$this->Query_Id = mysql_query($Query_String,$this->Link_Id);
-
$this->Insert_Id = mysql_insert_id();
-
if(!$this->Query_Id)
-
{
-
$this->halt('SQL查询语句出错:'.$Query_String);
-
}
-
@mysql_query('set names gb2312');
-
return $this->Query_Id;
-
}
-
-
function seek($pos)
-
{
-
if(@mysql_data_seek($this->Query_Id,$pos))
-
{
-
$this->Row_Position = $pos;
-
return true;
-
}
-
else
-
{
-
$this->halt('定位结果集发生错误!');
-
return false;
-
}
-
}
-
-
function get_rows_array()
-
{
-
$this->get_rows();
-
for($i = 0; $i < $this->Rows; $i++)
-
{
-
if(!mysql_data_seek($this->Query_Id,$i))
-
{
-
$this->halt('mysql_data_seek 查询出错!');
-
}
-
$this->Row_Result[$i] = mysql_fetch_array($this->Query_Id);
-
}
-
return $this->Row_Result;
-
}
-
-
function get_fields_array()
-
{
-
$this->get_fields();
-
for($i = 0; $i < $this->Fields; $i++)
-
{
-
$obj = mysql_fetch_field($this->Query_Id,$i);
-
$this->Field_Result[$i] = $obj->name;
-
}
-
return $this->Field_Result;
-
}
-
-
function get_affected_rows()
-
{
-
$this->Affected_Rows = mysql_affected_rows($this->Link_Id);
-
return $this->Affected_Rows;
-
}
-
-
function get_rows()
-
{
-
$this->Rows = mysql_num_rows($this->Query_Id);
-
return $this->Rows;
-
}
-
-
function get_fields()
-
{
-
$this->Fields = mysql_num_fields($this->Query_Id);
-
return $this->Fields;
-
}
-
-
function fetch_one_array($sql)
-
{ @mysql_query('set names gb2312');
-
$this->query($sql);
-
return mysql_fetch_array($this->Query_Id);
-
}
-
-
function halt($msg)
-
{
-
$this->Error = mysql_error();
-
printf("<font style='font-family:Arial,宋体;font-size:12px;'> <b>数据库发生错误:</b> %s \n",$msg);
-
printf("MySQL 返回错误信息:</b> %s \n",$this->Error);
-
printf("错误页面:<font style='color:#0000EE;text-decoration:underline'>%s</font> \n",$_SERVER['PHP_SELF']);
-
printf(" 请将错误信息提交到系统管理员或网站程序员处理! \n");
-
die('<b><font color=red>脚本终止</font></b></font>');
-
}
-
}