当前位置:首页 > CMS教程 > ecshop > 列表

ecshop实现注册必须邮箱验证后登录

发布:smiling 来源: PHP粉丝网  添加日期:2014-11-15 08:43:04 浏览: 评论:0 

现在大多数正式运营的网站,注册都是必须进行邮箱(email)验证或者手机验证后才能注册成功或者成功登录的,那我们怎么通过ecshop二次开发来实现这样的功能呢?其实也比较简单,按照下面代码修改就能实现.

1、注册成功后台自动发邮件并退出登录状态,提示需要验证邮件才能登录,修改根目录下的user.php文件.把如下代码:

  1. $ucdata = emptyempty($user->ucdata)? "" : $user->ucdata; 
  2. show_message(sprintf($_LANG['register_success'], $username . $ucdata), array($_LANG['back_up_page'], $_LANG['profile_lnk']), array($back_act'user.php'), 'info'); 
  3.  
  4. //替换成: 
  5.           $cfg = $_CFG['smtp_user']; 
  6.           if(!emptyempty($cfg) ) 
  7.           { 
  8.               $sql="select user_id from ".$GLOBALS['ecs']->table('users') ."where user_name = '$username'"
  9.               $user_id=$db->getOne($sql); 
  10.               send_regiter_hash ($user_id); 
  11.    }//开源软件:phpfensi.com 
  12.    $user->logout(); 
  13.              show_message('需要验证邮件才能登录'array($_LANG['back_up_page'], $_LANG['back_home_lnk']), array('user.php''index.php'), 'info'); 

购物流程时注册也要相应的修改,修改根目录下flow.php文件.

  1. //查找: 
  2.             if (register(trim($_POST['username']), trim($_POST['password']), trim($_POST['email']))) 
  3.  
  4. //将下面代码: 
  5.  ecs_header("Location: flow.php?step=consignee\n"); 
  6.  exit
  7. //替换成: 
  8.   $cfg = $_CFG['smtp_user']; 
  9.   if(!emptyempty($cfg) ) 
  10.   { 
  11.   $sql="select user_id from ".$GLOBALS['ecs']->table('users') ."where user_name = '".trim($_POST['username'])."'"; 
  12.   $user_id=$db->getOne($sql); 
  13.   send_regiter_hash ($user_id); 
  14.    } 
  15.    $user->logout(); 
  16.                 show_message('需要验证邮件才能登录'array($_LANG['back_up_page'],     $_LANG['back_home_lnk']), array('flow.php?step=login''index.php'), 'info');

Tags: ecshop注册邮箱 ecshop邮箱验证

分享到: