欢迎来到258分享网,纯净的网络源码分享基地!

258资源分享网

全部作品
全部作品
网站源码
微信源码
素材特效
源码插件
视频教程
建站学院
热门搜索: 织梦  农业种植  农业  安全设置  官方
258资源分享 > 建站学院 > ecshop教程 > 为ecshop红包增加”转赠”功能

推荐下载

HTML5响应式自适应网咯设计

2020-05-12   浏览:740

高端HTML5响应式企业通用网

2020-05-06   浏览:521

html5响应式外贸网站英文版

2020-05-08   浏览:510

HTML5自适应律师工作室类网

2020-04-04   浏览:504

HTML5影视传媒文化公司类网

2020-05-12   浏览:499

为ecshop红包增加”转赠”功能

发布时间:2021-05-25  

ecshop促销中使用红包激励用户购物,要想炒热活动,红包就需要有物以稀为贵的感觉。有人求有人送,这样红包之间的转赠有助于拉动第二梯队的顾客。但是如果已经把红包添加到自己的账户了怎么办?如果ecshop红包的使用再加上什么限制(比如,一个单只能用一个红包,就够坑爹的),现在来做一个线上转赠红包的功能

最模板简单的实现一下:

首先了解,红包存放在ecs_user_bonus表中,他的归属区分很简单:通过user_id来决定红包属于谁的。

功能涉及到四个文件:/js/user.js 、  /user.php、 /includes/lib_transaction.php 、 /themes/default/user_transaction.dwt

第一步:增加模板功能

在/themes/default/user_transaction.dwt中 {$item.status}后面添加

1   <!--{if $item.status == "未使用"}--><form action="/user.php"name="handsel_bonus_{$item.bonus_id}" method="post" onsubmit="return handsel_bonus_to_user(this)"><input type="hidden" name="act" value="handsel_bonus"><input type="hidden" name="bonus_id" value="{$item.bonus_id}"><input type="hidden"name="user_name" value=""><input class="btn_bom" type="submit" value="转赠"></form><!--{/if}-->  

代码,然后再增加点按钮的修饰

1   .btn_bom{padding:5px 10px; cursor:pointer;}  

,

这里作用是给处于未被使用状态的红包添加转赠按钮,这里未使用状态直接用文本判断,因为在模板赋值之前已经有过逻辑处理,另外我们转增过程中也会有相应的逻辑处理,因此不会出现bug,真的想完善,又有闲心的可以用语言包代替 本人一向鄙视多语言效果如下

第二步,前端交互增加表单验证

转赠信息提交的表单已经创建,现在需要做验证等相关工作,在/js/user.js中增加

1   /* *  

2   *   赠送红包  

3   */  

4   function handsel_bonus_to_user(obj){  

5       var username = prompt("输入你要转赠红包的账户名","");  

6       var msg='';  

7       if (username == null){return false;}  

8       if (username.length == 0)  

9     {  

10       msg += "用户名不能为空" + '\n';  

11     }  

12     else if (username.match(/^\s*$|^c:\\con\\con$|[%,\'\*\"\s\t\<\>\&\\]/))  

13     {  

14       msg += '用户名不合法' + '\n';  

15     }  

16     else if (username.length < 3)  

17     {  

18       msg += '用户名不合法' + '\n';  

19     }else{  

20       obj.user_name.value = username;  

21       return true;  

22     }  

23       alert(msg);  

24       return false;  

25   }  

代码,采用模式窗口接收数据

第三步:接收数据并处理

这一步开始就是核心功能方面的了,在/user.php中增加

1   /*赠送红包*/  

2   elseif( $action == 'handsel_bonus'){  

3      

4        include_once(ROOT_PATH .'includes/lib_transaction.php');  

5        if(isset($_REQUEST['bonus_id'])){  

6           $bonus_id = (int)$_REQUEST['bonus_id'];