帝國CMS封裝了一個SQL,文件位置是e/class/db_sql.php;使用程序本身的類庫可以給我們的開發帶來便利和效率,同時可以減少增設文件數量等。
首先,做下准備工作:
<?php /*引用文件*/ include("../../class/connect.php"); include("../../class/db_sql.php"); /*建立數據庫鏈接 與 實例化類*/ $link=db_connect(); $empire=new mysqlquery(); /*中間的這個位置用於我們測試代碼*/ /*關閉數據庫連接 與 釋放類*/ db_close(); $empire=null; ?>
<?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(); //如語句執行成功則返回true $sql=$empire->query("UPDATE {$dbtbpre}ecms_news set title='標題' where id=1"); var_dump($sql); hr(); //如語句執行失敗則終止執行並返回錯誤語句 下面的語句用了不存在的字段 $sql=$empire->query("UPDATE {$dbtbpre}ecms_news set titlesss='標題' where id=1"); var_dump($sql); hr(); db_close(); $empire=null; ?>
關於query這個對象的源文如下:在e/class/db_sql.php第九行;die()查看PHP手冊解釋為"die() 函數輸出一條消息,並退出當前腳本";所以第三條測試語句下的var_dump() 及其 hr(),都沒有執行就退出了;
function query($query) { $this->sql=mysql_query($query) or die(mysql_error().''.str_replace($GLOBALS['dbtbpre'],'***_',$query)); return $this->sql; }
對象query1則和mysql_query()一樣了,為節省版面長點的漢字都刪了。
<?php include("../../class/connect.php"); include("../../class/db_sql.php"); $link=db_connect(); $empire=new mysqlquery(); function hr(){ echo ' <hr /-->'; } $sql=$empire->query1("select id,title from {$dbtbpre}ecms_news"); var_dump($sql); hr(); //如語句執行成功true $sql=$empire->query1("UPDATE {$dbtbpre}ecms_news set title='測試更新標題' where id=1"); var_dump($sql); hr(); //如語句執行失敗則返回FLASE $sql=$empire->query1("UPDATE {$dbtbpre}ecms_news set titlesss='測試更新標題' where id=1"); var_dump($sql); hr(); db_close(); $empire=null; ?>