ECSHOP邮件验证后送积分
lib_common.php 的 log_account_change方法
/**
* 记录帐户变动
* @param int $user_id 用户id
* @param float $user_money 可用余额变动
* @param float $frozen_money 冻结余额变动
* @param int $rank_points 等级积分变动
* @param int $pay_points 消费积分变动
* @param string $change_desc 变动说明
* @param int $change_type 变动类型:参见常量文件
* @return void
*/
function log_account_change($user_id, $user_money = 0, $frozen_money = 0, $rank_points = 0, $pay_points = 0, $change_desc = '', $change_type = ACT_OTHER)
它会执行两个动作,一个是调整注册会员积分调整记录日志,一个就是修改个人帐户的积分了。
在user.php验证邮件方法下加入如下代码
/* 验证用户注册邮件 */
elseif ($action == 'validate_email')
{
$hash = empty($_GET['hash']) ? '' : trim($_GET['hash']);
if ($hash)
{
include_once(ROOT_PATH . 'includes/lib_passport.php');
$id = register_hash('decode', $hash);
if ($id > 0)
{
$sql = 'SELECT is_validated FROM '.$ecs->table('users')." WHERE user_id='$id'";
$row = $db->getRow($sql);
if($row['is_validated'] == 0)
{
$sql = "UPDATE " . $ecs->table('users') . " SET is_validated = 1 WHERE user_id='$id'";
$db->query($sql);
$sql = 'SELECT user_name, email FROM ' . $ecs->table('users') . " WHERE user_id = '$id'";
$row = $db->getRow($sql);
//验证完成 送积分 by gaojin 201003300850
include_once(ROOT_PATH .'includes/lib_common.php');
log_account_change($id, 0, 0, 0, 500,$GLOBALS['_LANG']['register_points']);
show_message(sprintf($_LANG['validate_ok'], $row['user_name'], $row['email']),$_LANG['profile_lnk'], 'user.php');
}
else
{
show_message(sprintf('请不要重复验证', $row['user_name'], $row['email']),$_LANG['profile_lnk'], 'user.php');
}
}
}
show_message($_LANG['validate_fail']);
}
希望对大家有所帮助
修改了重复点击验证邮件未验证的bug,会导致重复送积分的问题
转载于:https://www.cnblogs.com/wangblognet/archive/2012/10/17/2728034.html
ECSHOP邮件验证后送积分相关推荐
- ecshop 邮件模板 html,ecshop邮件模板默认数据与恢复.doc
PAGE / NUMPAGES ECSHOP邮件模板默认数据与恢复 ecshop模板堂() ecshop邮件模板是给客户发送邮件的格式,有些地方用变量表现.有时候客户误操作的时候会删除某些变量导致邮件 ...
- 短信验证码、图形验证码、邮件验证的自动化测试
短信验证码.图形验证码.邮件验证问题在自动化测试中是一个很常见的问题,也是一个很棘手的问题.设计的初衷其实就是为了防自动化,防止一些人利用自动工具恶意攻击网站,而很不幸的是,我们所使用的一些自动化测试 ...
- php 邮件验证_PHP程序来验证电子邮件地址
php 邮件验证 Suppose there is a form floating where every user has to fill his/her email ID. It might ha ...
- 使用阿里云邮件推送服务架设自己邮件验证与推送体系
提示:阅读本文需提前了解的相关知识 1.电子邮件协议(http://baike.baidu.com/view/2367542.htm) 2.阿里云邮件推送(https://www.aliyun.com ...
- 【Java EE 学习 21 下】【使用java实现邮件发送、邮件验证】
一.邮件发送 1.邮件发送使用SMTP协议或者IMAP协议,这里使用SMTP协议演示. SMTP协议使用的端口号:25 rfc821详细记载了该协议的相关信息 (1)使用telnet发送邮件(使用12 ...
- 【学生管理系统】用户登录三种验证方式—图片验证、短信验证、邮件验证
目录 一.页面需求展示 二.验证方式-按钮组件 三.手机短信验证 四.邮件验证 五.图片验证邮件验证
- 8 亿邮件地址泄露,源于邮件验证服务;腾讯推出微信公众号直播工具
(给技术最前线加星标,每天看技术热点) 转自:开源中国.solidot.cnBeta.腾讯科技.快科技等 [技术资讯] 0.8 亿邮件地址遭泄露,源于邮件验证服务 近日,Security Discov ...
- 帝国CMS 邮件验证功能或者说不能发邮件以及常见的错误
1.帝国CMS后台邮件验证步骤 登陆帝国后台------系统-----系统设置-----系统参数设置------FTP/EMAIL打开界面 需要设置的就是: SMTP服务器:smtp.qq.com S ...
- Apple ID很久没有登录,使用邮件验证修改手机号的方法
背景:没有已登录的苹果设备 手机号已经更换 知道登录密码(不知道登录密码,在官网修改,也是通过邮件验证) 解决方法 1.登录账号和密码,会提示需要输入验证码.点击"未收到验证码" ...
最新文章
- JAVA 中 string 和 int 互相转化
- 忘记Mysql的root密码怎么办
- word标题文字居中浅谈
- 【分析总结】ASP.NET中的状态管理原理
- 广东工业大学计算机学院研究生招生,蔡瑞初-广东工业大学研究生招生信息网...
- JAVA的Future类
- c语言400行小游戏,400行代码编C语言控制台界版2048游戏,编写疯子一样的C语言代码...
- DevOps冲击下的软件测试
- [深度学习] loss不下降的解决方法
- activiti高亮显示图片_Excel全自动甘特图,工作进度显示,极简设计快手套用
- 去见你喜欢的人,去做你想做的事
- 计算机视觉教程2-5:图像金字塔送她一朵玫瑰(附代码)
- 关于微服务的两篇文章以及Eventuate
- javascript与python性能对比-lua与python性能测试比较
- Docker Swarm学习教程【转载】
- 充电管理芯片中的一些特性说明
- 【Python+Pycharm】单词底部有波浪线,提示typo in word时
- 开机点用户名登录显示rfc服务器不可用,rpc服务器不可用
- 小毛给在一路上帮助过的人的一封感谢信
- 不清楚的照片如何变清晰?教你几招变清晰的方法
热门文章
- c++ 随机字符串_第3章 别碰白块(《C和C++游戏趣味编程》配套教学视频)
- unity android so热更,惊鸿哥的港湾
- JAVA我的世界给op_我的世界开服侠怎么给op 我的世界op指令合集
- vue项目做微信分享功能
- 内部存储_Mongodb存储特性与内部原理
- 外架小横杆外露长度规范要求_电缆制作通用工艺规范
- java lucence_Lucence使用入门
- 设置一行五个图标_如何解决苹果电脑 Launchpad 图标过大或者过小的问题?
- java实验多线程机制_使用Java多线程的同步机制编写应用程序 PDF 下载
- mysql主主复制半同步_mysql主从复制中的半同步复制