function mysql教程connector() : 類的構造函數,定義和包含配置信息
function connectmysql() : 打開數據庫教程連接
function close() : 關閉數據庫連接
function returnsql($sql) : 執行一條語句,返回一行的數組
function executesql($sql) : 執行一段查詢,返回是否成功
function returndb($sql) : 執行查詢,返回數據集
function selectlimit($sql,$offset_b,$offset_n=0)
: 分頁查詢,返回數據集 參數(sql語句,開始位置,讀取行數)
function datearray($sql,$startid,$endid)
: 分頁查詢,返回二維數組 參數(sql語句,開始位置,讀取行數)
function getarray($sql) : 執行兩個字段的查詢,返回一個數組,格式 array[row["0"]]=>row["1"]
*/
class mysqlconnector
{
/* public: 數據庫連接參數 */
var $dbhost; //服務器地址
var $dbname; //數據庫名稱
var $dbusername; //連接賬號
var $dbpassword; //連接密碼
var $setnames; //數據庫編碼function mysqlconnector() //構造函數,數據庫鏈接配置
{
$this->dbname = "xixia";
$this->dbhost = "localhost";
$this->dbusername = "root";
$this->dbpassword = "123456";
$this->setnames="gbk";
}function connectmysql() //鏈接數據庫,返回活動連接
{
$openconn = mysql_pconnect($this->dbhost,$this->dbusername,$this->dbpassword ) or die("連接數據庫錯誤,請檢查配置!");
mysql_query("set names '".$this->setnames."'",$openconn);
mysql_select_db($this->dbname,$openconn);
return $openconn;
}
/*
*
*執行查詢語句,返回某一行的數組
*/function returnsql($sql)
{
$array_result="";
//mysql_unbuffered_query
$db_result=mysql_query($sql,$this->connectmysql());
if($db_result){
$array_result=mysql_fetch_array($db_result);
}
mysql_free_result($db_result); //釋放記錄集
return $array_result;
}
/*
*
*執行查詢語句,返回數據
*
*/
function returndb($sql)
{
$db_result=mysql_query($sql,$this->connectmysql());
return $db_result;
}
/*
*
*執行查詢語句,返回某兩列的數組,主要用於下拉框,前一列是values,後一列是option
*
*/
function getarray($sql)
{
$array_result=array();
$db_result=mysql_query($sql,$this->connectmysql());
if($db_result){
while($row=mysql_fetch_row($db_result))
{
$array_result[$row[0]]=$row[1];
}
}
return $array_result;
}/*
*
*執行一條sql語句,返回執行是否成功
*
*/function executesql($sql)
{
//$sql = str_replace("","\",$sql);
$result=mysql_query($sql,$this->connectmysql());
if(!$result){
echo "<!--出錯了:" . $sql."-->";
return false;
}else{
return true;
}
}
/*
分頁讀取sql語句,返回紀錄集,
參數分別為sql語句,開始行數,讀取條數(傳遞2哥參數時,開始行數即為讀取條數)
*/
function selectlimit($sql,$offset_b,$offset_n=0)
{
$result="";
$this->checklink($sql);
if(!$offset_n){
$limit = " limit ".$offset_b;
}else{
$limit = " limit ".$offset_b.",".$offset_n;
}
$sql.=$limit;
// echo "<br>";
// echo $sql;
$result = $this->returndb($sql);
return $result;
}
/*
*
*將數據集轉化成數組
*
*/
function datearray($sql,$startid,$endid)
{
$array_result=array();
$db_result=$this->selectlimit($sql,$startid,$endid); //根據sql語句讀取數據集
if($db_result){ //數據集存在
$i=0;
while($row=mysql_fetch_row($db_result)) //循環填充數組
{
$array_result[$i]=$row;
$i++;
}
}
return $array_result;
}
/*
*
*關閉鏈接
*
*/
function close()
{
if($this->linkid!=null)
{
mysql_close($this->linkid);
unset($this);
}
}
}
/**使用案例:
$conn= new mysqlconnector(); //實例化
$db = &$conn;
$db->returnsql($sql) //執行查詢
*/