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');
|
新聞熱點
疑難解答