第一步:修正登录模板找到登陆的模板文件,默许文件为:
  1. /template/default/member/login.htm 登录模板
仿制代码 引证Discuz模板目录结构对照表:
http://www.dedecms51.com.cn/dz7top-dztemplate.html

找到如下代码:
  1. <option value="email">{lang email}</option>


在后面加上一句:

  1. <option value="mobile">手机</option>
仿制代码

修正后保存:


第二步:修正登录流程

翻开source\function\function_member.php

查找代码:
  1. userlogin($username, $password, $questionid,
找到:
  1. if($loginfield == 'uid' && getglobal('setting/uidlogin')) {
  2. $isuid = 1;
  3. } elseif($loginfield == 'email') {
  4. $isuid = 2;
  5. } elseif($loginfield == 'auto') {
  6. $isuid = 3;
  7. } else {
  8. $isuid = 0;
  9. }

修正为:
  1. if($loginfield == 'uid' && getglobal('setting/uidlogin')) {
  2. $isuid = 1;
  3. } elseif($loginfield == 'email') {
  4. $isuid = 2;
  5. } elseif($loginfield == 'auto') {
  6. $isuid = 3;
  7. } elseif($loginfield == 'mobile') {
  8. $isuid = 4;
  9. } else {
  10. $isuid = 0;
  11. }


修正后保存!

第三步:修正UC流程

翻开uc_client\control\user.php

查找:
  1. $user = $_ENV['user']->get_user_by_uid($username);
仿制代码 找到:
  1. if($isuid == 1) {
  2. $user = $_ENV['user']->get_user_by_uid($username);
  3. } elseif($isuid == 2) {
  4. $user = $_ENV['user']->get_user_by_email($username);
  5. } else {
  6. $user = $_ENV['user']->get_user_by_username($username);
  7. }
仿制代码 修正为:
  1. if($isuid == 1) {
  2. $user = $_ENV['user']->get_user_by_uid($username);
  3. } elseif($isuid == 2) {
  4. $user = $_ENV['user']->get_user_by_email($username);
  5. } elseif($isuid == 4) {
  6. $user = $_ENV['user']->get_user_by_mobile($username);
  7. } else {
  8. $user = $_ENV['user']->get_user_by_username($username);
  9. }
保存

第四步:增加登陆模型

翻开uc_client\model\user.php

查找:
  1. function get_user_by_uid($uid)
找到
  1. function get_user_by_uid($uid) {
  2. $arr = $this->db->fetch_first("SELECT * FROM ".UC_DBTABLEPRE."members WHERE uid='$uid'");
  3. return $arr;
  4. }

在他的上面或许下面增加如下代码

  1. function get_user_by_mobile($mobile) {
  2. $arr = $this->db->fetch_first("SELECT * FROM ".UC_DBTABLEPRE."members WHERE mobile='$mobile'");
  3. return $arr;
  4. }


然后保存!



声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益 请联系邮箱:123456@qq.com 我们将配合处理!

原文地址:DiscuzX3.2开发手机登录流程 禁止转载发布于2023-03-02 15:39:02

相关推荐