帝國CMS封裝了一個SQL,文件位置是e/class/db_sql.php;使用程序本身的類庫可以給我們的開發(fā)帶來便利和效率,同時可以減少增設(shè)文件數(shù)量等。
成都創(chuàng)新互聯(lián)專注于企業(yè)全網(wǎng)整合營銷推廣、網(wǎng)站重做改版、江岸網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、HTML5、電子商務(wù)商城網(wǎng)站建設(shè)、集團公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為江岸等各大城市提供網(wǎng)站開發(fā)制作服務(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ù)輸出一條消息,并退出當(dāng)前腳本";所以第三條測試語句下的var_dump()
及其
hr(),都沒有執(zhí)行就退出了;
function
query($query)
{
$this-sql=mysql_query($query)
or
die(mysql_error().''.str_replace($GLOBALS['dbtbpre'],'***_',$query));
return
$this-sql;
}
又是個沒分的題??!帝國cms的站長們都很窮?
帝國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的遠程登錄方式,參考這篇文
加個數(shù)據(jù)庫就完事了,帝國用的是mysql的數(shù)據(jù)庫,所以你只要加點小錢就可以搞這事了。