实现ecshop手机号码和Email地址登录
本ECSHOP功能是客户买过来的,在这里完全免费分享出来。在这里也非常感谢分享这个功能的客户!
默认的ECSHOP程序不 支持手机号码和邮箱登录,本插件是根据主流的B2C商城功能开发了此功能。整合原有登录系统,不影响原有登录系统数据结构。现在的网站要注册的地方真多, 用户名也是太多了不方便记忆。同时,也是为了提高会员品质,我们把会员登录帐号设置为支持用户名、手机号码和邮箱登录,这样可以大大提高网站有效用户,现 在基本上每个用户都有一个手机号码和邮箱。
用手机号码和邮箱登录,好处很明显:
1、使用手机号码和邮箱登录让网站更安全,追随用户体验趋势。
2、可以促使用户填写真实的手机号码和邮箱。
3、不易忘记。
4、使用手机号码和邮箱登录,更方便用户,提高客户回头率。
打开user.php文件,搜索找到如下代码:
if ($user->login($username, $password,isset($_POST['remember']))) { update_user_info(); recalculate_price(); $ucdata = isset($user->ucdata)? $user->ucdata : ''; show_message($_LANG['login_success'] . $ucdata , array($_LANG['back_up_page'], $_LANG['profile_lnk']), array($back_act,'user.php'), 'info'); }
在这段代码的上面添加:(看清楚是在上面)
if (is_email($username)) { $sql = "SELECT user_name FROM " . $ecs->table('users') . " WHERE email = '".$username."'"; $username = $db->getOne($sql); if (!$username) { return false; } } if (is_telephone($username)) { $sql ="SELECT user_name FROM " . $ecs->table('users') . " WHERE mobile_phone = '".$username."'"; $username = $db->getOne($sql); if (!$username) { return false; } }
接着最下面 ?> 的上一行加入以下代码:
function is_telephone($phone) { $chars = "/^13[0-9]{1}[0-9]{8}$|15[0-9]{1}[0-9]{8}$|18[0-9]{1}[0-9]{8}$/"; if (preg_match($chars, $phone)) { return true; } }
版权声明:
作者:xiaoniba
链接:https://blog.xiaoniba.com/2016/02/13/%e5%ae%9e%e7%8e%b0ecshop%e6%89%8b%e6%9c%ba%e5%8f%b7%e7%a0%81%e5%92%8cemail%e5%9c%b0%e5%9d%80%e7%99%bb%e5%bd%95/
来源:小泥吧的博客
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论