這篇文章主要介紹了帝國CMS下在PHP文件中調用數據庫類執行SQL語句實例,本文還詳細介紹了帝國CMS數據庫類中的一些常用方法,需要的朋友可以參考下。也可查看相關mysql管理工具
例1:連接MYSQL數據庫例子。(a.php)
代碼如下:
require('e/class/connect.php'); //引入數據庫配置文件和公共函數文件
require('e/class/db_sql.php'); //引入數據庫操作文件
$link=db_connect(); //連接MYSQL
$empire=new mysqlquery(); //聲明數據庫操作類
db_close(); //關閉MYSQL鏈接
$empire=null; //注消操作類變量
?>
例2:更新數據例子。(b.php)
代碼如下:
require('e/class/connect.php'); //引入數據庫配置文件和公共函數文件
require('e/class/db_sql.php'); //引入數據庫操作文件
$link=db_connect(); //連接MYSQL
$empire=new mysqlquery(); //聲明數據庫操作類
$empire->query("update {$dbtbpre}ecms_news set onclick=onclick+1"); //給新聞表的點擊數加1
db_close(); //關閉MYSQL鏈接
$empire=null; //注消操作類變量
?>
例3:查詢MYSQL數據的例子。(c.php)
代碼如下:
require('e/class/connect.php'); //引入數據庫配置文件和公共函數文件
require('e/class/db_sql.php'); //引入數據庫操作文件
$link=db_connect(); //連接MYSQL
$empire=new mysqlquery(); //聲明數據庫操作類
$sql=$empire->query("select * from {$dbtbpre}ecms_news order by newstime limit 10"); //查詢新聞表最新10條記錄
while($r=$empire->fetch($sql)) //循環獲取查詢記錄
{
echo"標題:".$r['title']."
";
}
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']."
";
}
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);
導航查詢例子:
代碼如下:
[e:loop={"select classid,classname,classpath from [!db.pre!]enewsclass where classid='69' and showclass=0 order by myorder ",0,24,0}]
src="[!--news.url--]skin/tx/zixun/images/index_line_nav.gif">
[/e:loop]
[e:loop={"select classid,classname,classpath from [!db.pre!]enewsclass where bclassid='69' and showclass=0 order by myorder ",0,24,0}]
$lanmuclass= "lanmu";
//echo $bqr[classid] ;
//echo "cur:".$GLOBALS[navclassid];
if ( $bqr[classid]==$GLOBALS[navclassid]) {
//echo "-";
$lanmuclass ="curlanmu";
}
?>
src="[!--news.url--]skin/tx/zixun/images/index_line_nav.gif">
[/e:loop]
此文由 網站目錄_網站網址收錄與提交入口 編輯,未經允許不得轉載?。?!--首頁 > 站長文章 > 帝國cms » 帝國CMS下在PHP文件中調用數據庫類執行SQL語句實例-->