帝國CMS擴充SQL程式編寫介紹
基本範例: #
說明:下面例子都是以PHP檔案放在系統根目錄為基準。
範例1:連接MYSQL程式。 (a.php)
<?php #require('e/class/connect.php'); //引入資料庫設定檔和公用函數檔案 require('e/class/db_sql.php'); //引入資料庫作業檔案 $link=db_connect(); //連接MY $query); //聲明數據庫操作類
db_close(); //關閉MYSQL鏈接 $empire=null; //註消操作類變量 ?> |
範例2:操作MYSQL資料的程式。 (b.php)
<?php #require('e/class/connect.php'); //引入資料庫設定檔和公用函數檔案 require('e/class/db_sql.php'); //引入資料庫作業檔案 $link=db_connect(); //連接MY $query); //宣告資料庫操作類別
$empire->query("update {$dbtbpre}ecms_news set onclick=onclick 1"); //給新聞表的點擊數加1
# 。
範例3:讀MYSQL資料的程式。 (c.php)
<?php #require('e/class/connect.php'); //引入資料庫設定檔和公用函數檔案 require('e/class/db_sql.php'); //引入資料庫作業檔案 $link=db_connect(); //連接MY $query); //宣告資料庫操作類別
$sql=$empire->query("select * from {$dbtbpre}ecms_news order by newstime limit 10"); //查詢新聞表 //查詢最新10筆記錄 while($r=$empire->fetch($sql)) //循環取得查詢記錄 { echo"標題:".$r['title']."<br>" ; }
db_close(); //關閉MYSQL連結 $empire=null; #
/e/class/db_sql.php檔案中資料庫操作類別常用的函數說明: 1、執行SQL函數: $empire->query("SQL語句"); $empire->query1("SQL語句");
說明: 執行成功返回true,執行不成功回傳false ; 兩者差異是:query()出錯直接中斷程式執行,query1()出錯不中斷程式執行。
使用範例: $sql=$empire->query("select * from {$dbtbpre}ecms_news");
2、循環讀取資料庫記錄函數: $empire->fetch($sql)
說明: $sql為query執行SQL回傳的結果。
使用範例: $sql=$empire->query("select * from {$dbtbpre}ecms_news"); while($r=$empire->fetch($ sql)) { echo"標題:".$r['title']."<br>"; }
#3、讀取單一資料庫記錄函數:(不循環) $empire->fetch1("SQL語句")
使用範例: $r=$empire->fetch1("select * from {$dbtbpre}ecms_news where id=1"); echo"標題:".$r['title'];
4、統計SQL查詢記錄數函數: $empire->num("SQL語句") $empire->num1($sql)
說明: 兩者的差異是:num()直接寫SQL語句,而num1()中的$sql為query執行SQL回傳的結果。
使用範例: $num=$empire->num("select id from {$dbtbpre}ecms_news"); echo"新聞表共有".$num." 則新聞";
5、統計SQL查詢記錄函數2:(相對於num更有效率的函數) $empire->gettotal("統計SQL語句");
說明: gettotal()和num()的差別是:gettotal()採用SQL本身的count(*)函數來統計,而num()是採用PHP本身的函數,gettotal( )更有效率一些。 gettotal()裡的統計數字一定要as total,如:「count(*) as total」。
使用範例: $num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_news"); echo"新聞表共有".$ num." 則新聞";
6、取得剛插入表的自增ID值函數: $empire->lastid()
使用範例: $empire->query("insert into {$dbtbpre}ecms_news(title) values('標題')"); $lastid=$empire->lastid(); echo"剛插入的資訊ID為:".$lastid;
7、行動SQL查詢結果記錄指標: $empire->seek($sql,$pit )
說明: $sql為query執行SQL傳回的結果,$pit為指標的偏移數。
使用範例: $sql=$empire->query("select * from {$dbtbpre}ecms_news"); $empire->seek($sql,2);
8、釋放SQL查詢結果函數:(一般不需要使用) $empire->free($sql)
說明: $sql為query執行SQL回傳的結果。
使用範例: $sql=$empire->query("select * from {$dbtbpre}ecms_news"); $empire->free($sql);
|
|
|