帝國CMS封裝了一個SQL,文件位置是e/class/db_sql.php;使用程序本身的類庫可以給我們的開發(fā)帶來便利和效率,同時可以減少增設(shè)文件數(shù)量等。
創(chuàng)新互聯(lián)公司于2013年創(chuàng)立,先為游仙等服務(wù)建站,游仙等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為游仙企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
首先,做下準備工作:
在e目錄下建立測試目錄,例如我建立的是e/trylife/td-test/
在1中目錄下建立個PHP文件,例如我建立的是e/trylife/td/test-db_sql.php
文件中寫入代碼如下:
?php
/*引用文件*/
include("../../class/connect.php");
include("../../class/db_sql.php");
/*建立數(shù)據(jù)庫鏈接
與
實例化類*/
$link=db_connect();
$empire=new
mysqlquery();
/*中間的這個位置用于我們測試代碼*/
/*關(guān)閉數(shù)據(jù)庫連接
與
釋放類*/
db_close();
$empire=null;
?
第一個測試的對象:query
query()執(zhí)行的是mysql_query()
返回值同樣遵循PHP手冊中對mysql_query()的解釋,不過執(zhí)行失敗的情況下是和mysq_query不一樣地
測試代碼如下(去除了篇幅比較大的注釋):
?php
include("../../class/connect.php");
include("../../class/db_sql.php");
$link=db_connect();
$empire=new
mysqlquery();
function
hr(){
echo
'
hr
/--';
}
$sql=$empire-query("select
id,title
from
{$dbtbpre}ecms_news");
var_dump($sql);
hr();
//如語句執(zhí)行成功則返回true
$sql=$empire-query("UPDATE
{$dbtbpre}ecms_news
set
title='標題'
where
id=1");
var_dump($sql);
hr();
//如語句執(zhí)行失敗則終止執(zhí)行并返回錯誤語句
下面的語句用了不存在的字段
$sql=$empire-query("UPDATE
{$dbtbpre}ecms_news
set
titlesss='標題'
where
id=1");
var_dump($sql);
hr();
db_close();
$empire=null;
?
關(guān)于query這個對象的源文如下:在e/class/db_sql.php第九行;die()查看PHP手冊解釋為"die()
函數(shù)輸出一條消息,并退出當前腳本";所以第三條測試語句下的var_dump()
及其
hr(),都沒有執(zhí)行就退出了;
function
query($query)
{
$this-sql=mysql_query($query)
or
die(mysql_error().''.str_replace($GLOBALS['dbtbpre'],'***_',$query));
return
$this-sql;
}
如何調(diào)用另一數(shù)據(jù)庫的內(nèi)容
帝國 CMS首頁調(diào)用tipask的其實并不難,帝國CMS的tipask問題表是ask_quertion,只需調(diào)用表中的字段。
以下是靈動標簽實現(xiàn),
[e:loop={"select id,title from ask_question order by id desc limit 10",10,24,0}]
lia href="/tipask/?q-?=$bqr[id]?" target="_blank" title="?=$bqr[title]?" ?=esub($bqr[title],30)?/a
/li
[/e:loop]
說明:tipask.ask_question 里的“tipask”要替換成你的數(shù)據(jù)庫名稱。
又是個沒分的題?。〉蹏鴆ms的站長們都很窮?
帝國cms本身是支持遠程數(shù)據(jù)庫的(就是你說的外部數(shù)據(jù)庫),就是在安裝帝國cms向?qū)?中,一步步引導(dǎo),選擇的數(shù)據(jù)庫地址 可以填寫遠程數(shù)據(jù)庫的訪問IP及端口。
但是!關(guān)鍵問題在這里,MySQL數(shù)據(jù)庫所在的服務(wù)器(你的A主機)還要支持數(shù)據(jù)庫遠程登錄才可以用這種方法!這就需要比較復(fù)雜一點的設(shè)置了。
你可以百度一下如何設(shè)置MySQL的遠程登錄方式,參考這篇文