如何实现ECshop注册必须做好邮箱验证
建议修改前,做好备份。
ecshop模板做二次开发要注册后自动发送邮件验证,验证成功才能登录:
一、可以提示用户立即去验证注册的邮件
二、方验以后推广筛选有效邮箱
现在最模板以下如何注册自动发送邮件验证,验证成功才能登录:
1、注册成功自动发邮件并退出登录状态,提示需要验证邮件才能登录。
在user.php大约233行很234行
把:
$ucdata = empty($user-ucdata)? "" : $user-ucdata;
show_message(sprintf($_LANG['register_success'], $username . $ucdata), array($_LANG['back_up_page'], $_LANG['profile_lnk']), array($back_act, 'user.php'),
'info');
替换成:
$cfg = $_CFG['smtp_user'];
if(!empty($cfg) )
{
$sql="select user_id from ".$GLOBALS['ecs']-table('users') ."where user_name = '$username'";
$user_id=$db-getOne($sql);
send_regiter_hash ($user_id);
}
$user-logout();
show_message('需要验证邮件才能登录', array($_LANG['back_up_page'], $_LANG['back_home_lnk']), array('user.php', 'index.php'), 'info');
购物流程时注册也要相应的修改
打开flow.php大约282行
查找:
if (register(trim($_POST['username']), trim($_POST['password']), trim($_POST['email'])))
将下面代码:
/* 用户注册成功 */
ecs_header("Location: flow.php?step=consignee\n");
exit;
替换成:
$cfg = $_CFG['smtp_user'];
if(!empty($cfg) )
{
$sql="select user_id from ".$GLOBALS['ecs']-table('users') ."where user_name = '".trim($_POST['username'])."'";
$user_id=$db-getOne($sql);
send_regiter_hash ($user_id);
}
$user-logout();
show_message('需要验证邮件才能登录', array($_LANG['back_up_page'], $_LANG['back_home_lnk']), array('flow.php?step=login', 'index.php'), 'info');
如何去掉ECShop购物流程中收货人电子邮箱必填
首先打开includes/lib_order.php,找到并删除如下代码
!empty($consignee['email'])
接着打开jsshopping_flow.js,找到并删除如下代码
if ( ! Utils.isEmail(frm.elements['email'].value))
{
err = true;
msg.push(invalid_email);
}
最后在默认模板里面找到库文件libraryconsignee.lbi,找到并删除如下代码
在代码 td bgcolor="#ffffff" style="padding-left:5px;"{$lang.email_address}:/td 下面的
{$lang.require_field}
更多教程可查看
ECSHOP 注册自动发送注册邮件问题
“这段语法错误” 是什么意思?上面的那段就是判断如果你注册成功了,然后调用一个叫 send_reg 的邮件模板直接去发送邮件;下面的这段代码是ecshop 的原生代码,注册时邮箱必填,但是没有发送邮件去激活邮箱,在登录后进入用户中心页面,就会有一个"点此发送认证邮件"的链接,点了那个链接就会调用下面的这段,进行发送邮件~
如果不能解决你的问题,请详细描述~
ecshop购物流程中的邮箱(email)如何去掉
现在大家都有ecmail邮箱了,但是也有很少部分人不用,比如100个人用邮箱,但有1个人不用,这种概率也是有的。但是很有可能这个没有邮箱的人想要到你ecshop网店买一个东西,但当走到购物流程里面的时候发现必须要输入email,这种情况是很郁闷的,是自己重新注册一个,还是瞎填,对客户来说都是一件选择,也不利于这笔订单的完成。那么这里ecshop模板堂就介绍一个去掉购物流程里面的邮箱方法。首先打开includes\lib_order.php,在第1688行左右找到并删除!empty($consignee['email']) 接着打开js\shopping_flow.js,在第582-586行左右找到并删除if ( ! Utils.isEmail(frm.elements['email'].value)){err = true;
msg.push(invalid_email);}然后模板文件里面找到库文件library\consignee.lbi,找到并删除以下代码
{$lang.require_field}这样就修改成功了
lue)){err = true;msg.push(invalid_email);}最后在默认模板里面找到库文件libraryconsignee.lbi,找到并删除如下代码在代码 td bgcolor="#ffffff" style="padding-left:
如何实现ECshop注册必须做好邮箱验证建议修改前,做好备份。 ecshop模板做二次开发要注册后自动发送邮件验证,验证成功才能登录:一、可以提示用户立即去验证注册的邮件二、方验以后推广筛选有效邮箱现在最模板以下如何注册自动发送邮件验证,验证成功才能登录:1、注册成