接上一篇:帝国CMS二次开发 – 使用程序本身的SQL类
上一篇看了帝国sql 类中的query()和query1();接下来再看fetch()和fetch1();
下面介绍正确的写法和一些用处:
fetch()
一般情况下我们用来,循环出列表或者列出多条信息;例如下面的例子取得会员组ID为1的所有会员ID和用户名;fetch()的参数是SQL语句执行的结果也就是先执行query();再把query()的执行结果作为参数给fetch()使用;
< ?php
include("../../class/connect.php");
include("../../class/db_sql.php");
$link=db_connect();
$empire=new mysqlquery();
//列出GROUPID=1的所有会员用户ID和用户名
$sql=$empire->query("select userid,username from {$dbtbpre}enewsmember where groupid=1");
while($r=$empire->fetch($sql)){
echo $r[userid].'---'.$r[username].'';
}
db_close();
$empire=null;
?>
fetch1()
简单的说我们查询一条信息的时候才用它,比如获取USERID为1的会员资料;和fetch()不同的是fetch1()的参数是SQL语句而不是执行结果,所以在SQL语句不第二次使用的情况下直接进去就好了;fetch1()只取一条数据;
< ?php
include("../../class/connect.php");
include("../../class/db_sql.php");
$link=db_connect();
$empire=new mysqlquery();
//会员会员ID为1的资料
$r=$empire->fetch1("select userid,username from {$dbtbpre}enewsmember where userid=1 limit 1");
echo $r[userid].'';
echo $r[username].'';
db_close();
$empire=null;
?>
简述:帝国CMS封装了一个SQL,文件位置是e/class/db_sql.php;使用程序本身的类库可以给我们的开发带来便利和效率;同时可以减少增设文件数量等;今天就和trylife一起了解下帝国CMS的SQL类和使用方法;
首先:做下准备工作
1.在e目录下建立测试目录,例如我建立的是e/trylife/td-test/
2.在1中目录下建立个PHP文件,例如我建立的是e/trylife/td/test-db_sql.php
3.文件中写入代码如下
< ?php
/*引用文件*/
include("../../class/connect.php");
include("../../class/db_sql.php");
/*建立数据库链接 与 实例化类*/
$link=db_connect();
$empire=new mysqlquery();
/*中间的这个位置用于我们测试代码*/
/*关闭数据库连接 与 释放类*/
db_close();
$empire=null;
?>
接下来,使用简单的<?php echo ‘你好’; ?>来对投稿流程中增设代码进行练习; 在下面的过程中将使用ECMS(帝国CMS)二次开发1 – 基本方式概述第三项,第三种方式:
1.在如下目录e\trylife\MemberAddIonfo中建立文件fun.php,并写入如下代码
2.在e/Doinfo/ecms.php中加入如下代码:
require("../trylife/MemberAddIonfo/fun.php"); //20091110 trylife for test Maddinfo
加好后参考如下:
require("../class/connect.php");
require("../class/db_sql.php");
require("../trylife/MemberAddIonfo/fun.php"); //20091110 trylife for test Maddinfo
3.在e/class/qinfofun.php DodoInfo()函数体内加入函数如下代码:
TestMAddinfo(); //trylife add for test MaddInfo 20091110
修改后参考如下:
esetcookie("lastaddinfotime",time(),time()+3600*24);//设置最后发表时间
TestMAddinfo(); //trylife add for test MaddInfo 20091110
printerror("AddQinfoSuccess",$reurl,1);
4.前台投稿,可以看到跳转链接的字了
备注:
1.这只是一个简单的测试,做完这一个流程后可以理解怎样增设功能
2.echo 可以有跟踪代码的作用;当然用工具也可以;
后台管理员(前缀+)
Back-End:for Administrators(Back-End Prefixion+ )
ecmsdodbdata:empirecms //
eloginlic:empirecmslic //用户许可证书名称
loginadminstyleid:1 //风格ID
loginecmsckpass:e106107180eb2b343f5fcfc4acb569cdc //密码加密
loginlevel:1 //组ID
loginrnd:W2bng94vjyWAXfBuFKFq //认证码加密
loginuserid:1 //用户ID
loginusername:admin //用户名
logintime:1256575463 //登陆时间UNIX时间戳
前台会员(前缀+)
Front-End:for members( Front-End Prefixion+ )
mlgroupid:1 //会员组ID
mlrnd:c9tVw6bXikEZ //RND认证加密
mluserid:2 //会员ID
mlusername:test //会员用户名
在ECMS里怎样取得前台会员Cookie
How can i get those Cookies