- //*******************************************************************
- //此處構(gòu)造一個(gè)數(shù)據(jù)庫(kù)操作類(lèi),封裝所有數(shù)據(jù)庫(kù)操作
- //可以擴(kuò)展便于后臺(tái)管理程序的使用
- Class MySQLDB
- {
- var $host;
- var $user;
- var $passwd;
- var $database;
- var $conn;
- //利用構(gòu)造函數(shù)實(shí)現(xiàn)變量初始化
- //同時(shí)連接數(shù)據(jù)庫(kù)操作
- function MySQLDB($host,$user,$password,$database)
- {
- $this->host = $host;
- $this->user = $user;
- $this->passwd = $password;
- $this->database = $database;
- $this->conn=mysql_connect($this->host, $this->user,$this->passwd) or
- die("Could not connect to $this->host");
- mysql_select_db($this->database,$this->conn) or
- die("Could not switch to database $this->database");
- }
- //該函數(shù)用來(lái)關(guān)閉數(shù)據(jù)庫(kù)連接
- function Close()
- {
- MySQL_close($this->conn);
- }
- //該函數(shù)實(shí)現(xiàn)數(shù)據(jù)庫(kù)查詢操作
- function Query($queryStr)
- {
- $res =Mysql_query($queryStr, $this->conn) or
- die("Could not query database");
- return $res;
- }
- //該函數(shù)返回記錄集
- function getRows($res)
- {
- $rowno = 0;
- $rowno = MySQL_num_rows($res);
- if($rowno>0)
- {
- for($row=0;$row<$rowno;$row++ )
- {
- $rows[$row]=MySQL_fetch_array($res);
- //本來(lái)為MySQL_fetch_row,但是不能以數(shù)組的方式來(lái)提取,只能用索引
- //這樣可以用索引和名稱,更為方便
- }
- return $rows;
- }
- }
- //該函數(shù)取回?cái)?shù)據(jù)庫(kù)記錄數(shù)
- function getRowsNum($res)
- {
- $rowno = 0;
- $rowno = mysql_num_rows($res);
- return $rowno;
- }
- //該函數(shù)返回?cái)?shù)據(jù)庫(kù)表字段數(shù)
- function getFieldsNum($res)
- {
- $fieldno = 0;
- $fieldno = mysql_num_fields($res);
- return $fieldno;
- }
- //該函數(shù)返回?cái)?shù)據(jù)庫(kù)表字段名稱集
- function getFields($res)
- {
- $fno = $this->getFieldsNum($res);
- if($fno>0)
- {
- for($i=0;$i<$fno;$i++ )
- {
- $fs[$i]=MySQL_field_name($res,$i);//取第i個(gè)字段的名稱
- }
- return $fs;
- }
- }
- }
- //使用時(shí)直接require該文件,然后實(shí)例化:
- $SqlDB = new MySQLDB("localhost","root","root","testdb");
- $sql = "select * from tableX...";
- $result = $SqlDB->Query($sql);//查詢
- $rs = $SqlDB->getRows($result);//獲得記錄集
- $num = $SqlDB->getRowsNum($result);//獲得記錄數(shù)
- ...剩下的操作就是循環(huán)取值,
- for($i=0;$i<$num;$i++){
- echo($rs[$i]["字段名"]);
- }
- ...
最后不要忘記關(guān)閉數(shù)據(jù)路連接哦$SqlDB->Close();當(dāng)然這句可以不要,php會(huì)自動(dòng)注銷(xiāo)!但是這樣能夠養(yǎng)成一個(gè)好的習(xí)慣,最好還是加上!其他自己類(lèi)推...不懂的可以提問(wèn)!
新聞熱點(diǎn)
疑難解答