帝国CMS AJAX无刷新登陆/注册/下载 (截图)

01

帝国CMS AJAX无刷新登陆/注册/下载 截图

trylife的开发手记

登陆状态
登陆状态比较好处理,原本帝国CMS的登陆状态是生成到e/member/login/loginjs.php文件里的,复制一份文件到e/trylife/ajax/loginjs.php 修改下,ajax访问这个文件并把返回值写到模板里即可,(trylife这里用的JQuery库)

登陆/注册/下载操作
这里涉及要修改的函数比较多,主要是把函数中的printerror()函数改掉,建议把所有涉及的函数都拷贝出来做,e/enews/index.php e/DownSys/DownSoft/index.php 文件同一复制到一个文件夹内,这样系统升级不会造成麻烦,文件函数管理也都方便~

发现实际也没什么好写的下一篇了

帝国CMS无刷新加入购物车

25

帝国CMS商城代码解析1 – 购物车cookie示例

使用方法

1.修改商城内容模板或列表模板 加入代码如下代码




2.修改商城内容模板或列表模板 适当位置加入代码如下代码

AJAX加入购物车

3.上传e文件夹覆盖e目录
//没有修改任何系统文件

文件下载

http://www.trylife.cn/wp-content/uploads/2010/11/ecms-shopdemo-ajax-addbuycar.zip

新的帝国CMS反馈发送邮箱示例

20

e/class/q_functions.php 搜索 printerror(“AddFeedbackSuccess”,$reurl,1);
在其上一行加入代码如下:

		//trylife反馈发送到邮箱 [s] 1/1
		//所需字段用 $add[字段]来表示
		if($bid==1)//反馈ID1
		{
			$sendmail=1;//1 发邮件 0不发邮件
			$email=array('94592590@qq.com');
			$subject='邮件标题';
			$content='邮件内容';
		}
		elseif($bid==2)//反馈ID2
		{
			$sendmail=1;//1 发邮件 0不发邮件
			$email=array('94592590@qq.com');
			$subject='邮件标题';
			$content='邮件内容';
		}
		elseif($bid==3)//反馈ID3
		{
			$sendmail=1;//1 发邮件 0不发邮件
			$email=array('94592590@qq.com');
			$subject='邮件标题';
			$content='邮件内容';
		}
		//发送邮件部分
		if($sendmail)
		{
				@include(ECMS_PATH.'e/class/SendEmail.inc.php');
				EcmsToSendMail($email,$subject,$content);
		}
		//trylife反馈发送到邮箱 [e] 1/1

帝国CMS订单邮件提醒

20

e/class/ShopSysFun.php搜索代码 printerror($mess,$location,1);
在上一行加入如下代码:

		//trylife 订单信息发送管理员邮箱 [s] 1/1
		//此函数增加代码开始结束 无其他
		$email=array('94592590@qq.com');
		$subject='邮件标题';
		$content='邮件内容';   

		@include(ECMS_PATH.'e/class/SendEmail.inc.php');
		EcmsToSendMail($email,$subject,$content);
		//trylife 订单信息发送管理员邮箱 [e] 1/1

提高帝国CMS二次开发关联模型效率 高效利用帝国CMS关联字段

22 13°

帝国CMS关联字段应用简介

这个功能主要是为了两个或多个模型行数据间关系而产生的;例如音乐模型中的数据关系如下:
phome_ecms_singer(歌手数据表)
id //歌手ID
title //歌手名
text //歌手简介

phome_ecms_album(专辑数据表)
id//专辑ID
title //专辑名称
singer_id //歌手ID 这个歌手ID就是关联的 歌手数据表中的id字段

phome_ecms_music(专辑数据表)
id//歌曲ID
title //歌曲名称
singer_id //歌手ID 这个歌手ID就是关联的 歌手数据表中的id字段
album_id //专辑ID 这个专辑ID就是关联的 专辑数据表中的id字段
downpath //音乐地址

选择外表关联字段 与 下拉外表关联字段优缺点

使用帝国CMS关联字段有“选择外表关联字段”与“下拉外表关联字段”两种关联表单录入方式;
选择外表关联字段:弹出新页面选择要录入的值,优点是避免过多数据载入到表单页导致添加信息表单加载慢,别且可以搜索,缺点例如当我们要使用id作为录入字段,title作为显示字段的时候,再次修改表单带来了信息确认上的困难(使用id 等INT类型是因为查询的时候较为高效);
下拉外表关联字段:优缺点正好反过来……

关联字段的数据调用

灵动标签+SQL示例:专辑内容页调用所有专辑下歌曲

[e:loop={"select * from {$dbtbpre}ecms_music where album_id='$navinfor[id]' order by id desc",0,24,0,'',''}]
//这里是木板内容 内容页内的字段值可以使用$navinfor[字段]的方式获取
[/e:loop]

使用结合项:有关结合项可以看官方结合项解密

规避帝国CMS原有的管理字段缺点 使用AJAX效果

做的好点不仅可以规避原有管理字段的缺点而且还可以做到同页面录入关联模型信息,这个就不多说了(trylife的JS现在还是个白菜,有JS的问题可以问装B的凡姐 哈哈)截张近期项目的图;


这张图还少了一张游戏账号表


类似百度的搜索关键字下拉


游戏账号的无刷新录入和管理