打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
优化ecshop注册登陆只需email

优化ecshop注册登陆只需email

ecshop模板网 / 2013-06-18

 现在很多主流的电商网站都直接用email作为会员账号,好处是省得用户既要想一个用户名,又要填邮箱,邮箱对于电商网站的重要性不用多提,因此用email作为会员的唯一标识是很合理的做法,ecshop模板网给出针对ECSHOP实现该功能的方法,原理是注册时将email表单的值顺便返回给username,并去掉注册时username的js验证,然后在登录中实现username跟email都可以登录,这样做的好处是,即实现了ecshop用email注册登录的功能,又不改动ecshop的数据库和后台功能,其实本质上没有变化什么,会员账号还是存在的,邮箱也是存在的,只是我们强制把会员账号等于email账号。 

首先修改注册部分

1,themes/****/user_passport.dwt 会员名称输入的表单,将之去掉


2,js/user.js 找到 function register() 并将以下代码删除

  if (username.length == 0)
  {
    msg += username_empty + '\n';
  }
  else if (username.match(/^\s*$|^c:\\con\\con$|[%,\'\*\"\s\t\<\>\&\\]/))
  {
    msg += username_invalid + '\n';
  }
  else if (username.length < 3)
  {
    //msg += username_shorter + '\n';
  }


3,user.php 找到 elseif ($action == 'act_register') 将以下代码
$username = isset($_POST['username']) ? trim($_POST['username']) : '';

改为

$username = isset($_POST['email']) ? trim($_POST['email']) : '';


其次实现登录时可以使用email登录

1,includes/modules/integrates/integrate.php 找到 function login 并将整个函数改为以下代码

function login($username, $password, $remember = null)
{
                 if(is_email($username))
                 {
                 $sql = "sel ect ".$this->field_name." from ".$this->table($this->user_table)." where ".$this->field_email."='".$username."'";
                 $username = $this->db->getOne($sql);
                 if(!$username) return false;
                 }
                 if ($this->check_user($username, $password) > 0)
                 {
                                 if ($this->need_sync)
                                 {
                                                 $this->sync($username,$password);
                                 }
                                 $this->set_session($username);
                                 $this->set_cookie($username, $remember);
                                 return true;
                 }
                 else
                 {
                                 return false;
                 }
}

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Ecshop二次改造实现用户名或Email都能登陆
ecshop中将会员注册页面的email修改成非必填项
无刷新删除数据 - PHP
2020Python练习七
Ecshop会员注册的电子邮箱改成非必填项
使用jquery实现用户名验证
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服