Magento以手机号和密码登录简介

简介:

上一篇文章为Magento1.5新增会员注册字段讲到给Magneto注册时新增一个mobile字段,也就是手机号,这里讲下如何以注册时所填手机号和密码来登录系统,而不仅仅只能通过email登录。

因为需要拿手机号来登录,所以首先要明确一件事,就是这个手机号字段在系统中必须是唯一的,也就是说不能存在两个手机号一样的会员,所以首先注册时要验证所填的手机号是否已经被注册。打开文件app\code\core\Mage\Customer\controllers\AddressController.php,找到createPostAction,在改Action里新增验证代码,参考如下

$mobile = $this->getRequest()->getParam('mobile', false);
        $mobilestatus = Mage::getModel('customer/customer')->getCollection()
        ->addAttributeToFilter('mobile', $mobile)
        ->getFirstItem()
        ->load();
        if($mobilestatus->getData('mobile')){  
               $session->addError('该手机号已被使用');
               $this->_redirect('*/*/create');
               return;
        }
然后就是在登录是要允许使用注册所填的手机号和密码来登录,其实原理很简单,因为email和手机号对于会员来说都是唯一的,所以一个手机号必然能找到对应会员的email,程序中实现的话就是以手机号去除email,然后继续按系统自由登录流程使用eamil和密码登录系统。同一个文件中,找到loginPostAction,新增代码参考如下

if (!empty($login['username']) && !empty($login['password'])) {
                try {
                                    //用手机号登录
                    $username = $login['username'];
                    if(!strstr($username,'@')){
                        $mobile = Mage::getModel('customer/customer')->getCollection()
                        ->addAttributeToFilter('mobile', $username)
                        ->getFirstItem()
                        ->load();
                        if($mobile->getData('email')){
                            $email =  $mobile->getData('email');
                            $login['username']  = $email;
                        }
                    }
                    $session->login($login['username'], $login['password']);	

至此,我们已经可以使用手机号和密码登录系统了,当然这只是第一步,后面还会涉及到问题就不细说了,有兴趣的自己去尝试和完善吧

目录
相关文章
|
3月前
|
存储 JSON JavaScript
前后端分离项目知识汇总(微信扫码登录,手机验证码登录,JWT)-1
前后端分离项目知识汇总(微信扫码登录,手机验证码登录,JWT)
65 0
|
安全 数据安全/隐私保护
阿里云账号开启手机号登录方法
阿里云账号开启手机号验证码登录方法
2063 0
阿里云账号开启手机号登录方法
|
5月前
|
JSON 前端开发 安全
前后端分离项目知识汇总(微信扫码登录,手机验证码登录,JWT)-2
前后端分离项目知识汇总(微信扫码登录,手机验证码登录,JWT)
40 0
|
1月前
|
安全 Linux 网络安全
购了轻服务器,手机登录服务器用root和administrator做登录名,都提示别名已存在,请修改
【2月更文挑战第16天】购了轻服务器,手机登录服务器用root和administrator做登录名,都提示别名已存在,请修改
13 1
|
2月前
|
安全 Linux 网络安全
手机登录服务器用root和administrator做登录名,都提示别名已存在
【2月更文挑战第5天】手机登录服务器用root和administrator做登录名,都提示别名已存在
30 8
|
3月前
|
JSON 前端开发 安全
前后端分离项目知识汇总(微信扫码登录,手机验证码登录,JWT)-2
前后端分离项目知识汇总(微信扫码登录,手机验证码登录,JWT)
55 0
|
3月前
|
JavaScript 数据安全/隐私保护
jquery正则表达式验证手机号密码和姓名字段
jquery正则表达式验证手机号密码和姓名字段
|
5月前
|
存储 JSON JavaScript
前后端分离项目知识汇总(微信扫码登录,手机验证码登录,JWT)-1
前后端分离项目知识汇总(微信扫码登录,手机验证码登录,JWT)
61 0
uniapp手机号授权登录-现在只能通过手机号授权登录,后台来获取用户信息了效果demo(整理)
uniapp手机号授权登录-现在只能通过手机号授权登录,后台来获取用户信息了效果demo(整理)
判断手机登录还是电脑登录效果示例(整理)
判断手机登录还是电脑登录效果示例(整理)

热门文章

最新文章