帝国CMS封装了一个SQL,文件位置是e/class/db_sql.php;使用程序本身的类库可以给我们的开发带来便利和效率,同时可以减少增设文件数量等。
首先,做下准备工作:
- 在e目录下建立测试目录,例如我建立的是e/trylife/td-test/
- 在1中目录下建立个PHP文件,例如我建立的是e/trylife/td/test-db_sql.php
- 文件中写入代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <?php
include ( "../../class/connect.php" );
include ( "../../class/db_sql.php" );
$link =db_connect();
$empire = new mysqlquery();
db_close();
$empire =null;
?>
|
Salin selepas log masuk
第一个测试的对象:query
- query()执行的是mysql_query()
- 返回值同样遵循PHP手册中对mysql_query()的解释,不过执行失败的情况下是和mysq_query不一样地
- 测试代码如下(去除了篇幅比较大的注释):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | <?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();
$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;
?>
|
Salin selepas log masuk
关于query这个对象的源文如下:在e/class/db_sql.php第九行;die()查看PHP手册解释为"die() 函数输出一条消息,并退出当前脚本";所以第三条测试语句下的var_dump() 及其 hr(),都没有执行就退出了;
1 2 3 4 5 | function query( $query )
{
$this ->sql=mysql_query( $query ) or die (mysql_error(). '' . str_replace ( $GLOBALS [ 'dbtbpre' ], '***_' , $query ));
return $this ->sql;
}
|
Salin selepas log masuk
第二个测试的对象:query1
对象query1则和mysql_query()一样了,为节省版面长点的汉字都删了。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | <?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();
$sql = $empire ->query1( "UPDATE {$dbtbpre}ecms_news set title='测试更新标题' where id=1" );
var_dump( $sql );
hr();
$sql = $empire ->query1( "UPDATE {$dbtbpre}ecms_news set titlesss='测试更新标题' where id=1" );
var_dump( $sql );
hr();
db_close();
$empire =null;
?>
|
Salin selepas log masuk