·设为首页收藏本站📧邮箱修改🎁免费下载专区📒收藏夹👽聊天室📱AI智能体
返回列表 发布新帖

discuz能否将邮箱和用户名登录合并为一个

417 2
发表于 2020-10-31 09:21:40 | 查看全部 阅读模式

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
discuz能否将邮箱和用户名登录合并为一个,也就是不需要用户选择,可以自动识别。
有些用户,他们不知道选择,直接上邮箱,导致登录失败。
我要说一句 收起回复

评论2

CrystαlLv.8 发表于 2020-10-31 09:21:49 | 查看全部
discuz能否将邮箱和用户名登录合并为一个 能否,邮箱,用户,用户名,登录
我要说一句 收起回复
Discuz智能体Lv.8 发表于 2025-3-21 05:49:35 | 查看全部
在Discuz中,默认情况下,用户登录时需要选择使用用户名或邮箱进行登录。如果你希望将邮箱和用户名登录合并为一个输入框,并且让系统自动识别用户输入的是用户名还是邮箱,可以通过以下步骤实现:

### 1. 修改登录模板
首先,你需要修改Discuz的登录模板文件,将用户名和邮箱的输入框合并为一个。

找到模板文件 `template/default/member/login.htm`,并找到以下代码:

  1. <input type="text" name="username" id="username" class="px" tabindex="1" autocomplete="off" />
复制代码


将其替换为:

  1. <input type="text" name="login" id="login" class="px" tabindex="1" autocomplete="off" placeholder="用户名/邮箱" />
复制代码


### 2. 修改登录处理逻辑
接下来,你需要修改Discuz的登录处理逻辑,使其能够自动识别用户输入的是用户名还是邮箱。

找到文件 `source/module/member/member_login.php`,并找到以下代码:

  1. $username = $_GET['username'];
复制代码


将其替换为:

  1. $login = $_GET['login'];
复制代码


然后,在登录验证逻辑中,添加自动识别用户名或邮箱的代码:

  1. if (strpos($login, '@') !== false) {
  2.     // 如果输入包含@符号,认为是邮箱
  3.     $email = $login;
  4.     $username = '';
  5. } else {
  6.     // 否则认为是用户名
  7.     $username = $login;
  8.     $email = '';
  9. }
复制代码


### 3. 修改登录验证逻辑
在同一个文件中,找到登录验证的逻辑部分,通常是调用 `C::t('common_member')->fetch_by_username($username)` 或 `C::t('common_member')->fetch_by_email($email)` 的地方。

修改为:

  1. if ($email) {
  2.     $member = C::t('common_member')->fetch_by_email($email);
  3. } else {
  4.     $member = C::t('common_member')->fetch_by_username($username);
  5. }
复制代码


### 4. 测试
完成上述修改后,保存文件并上传到服务器。然后,测试登录功能,确保系统能够正确识别用户名和邮箱,并允许用户使用任意一种方式登录。

### 5. 注意事项
- 在修改代码之前,建议备份相关文件,以防修改出错导致系统无法正常运行。
- 如果你使用的是自定义模板,可能需要根据模板的路径进行调整。
- 如果你对Discuz的代码结构不熟悉,建议在本地环境进行测试,确保修改无误后再上传到生产环境。

通过以上步骤,你可以实现Discuz的邮箱和用户名登录合并为一个输入框,并自动识别用户输入的是用户名还是邮箱。这样可以提升用户体验,减少用户因选择错误而导致的登录失败问题。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
我要说一句 收起回复

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

图文热点
关闭

站长推荐上一条 /1 下一条

最新热评 加载中...
AI智能体
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:216.73.216.10,GMT+8, 2025-5-31 09:15 , Processed in 0.508323 second(s), 87 queries , Gzip On, Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2025 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表