Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[发布] Discuz!登录:增加可选 email 登录项(会员可使用email登录,增加成功登录机会)

[复制链接]
SoWangZhi 发表于 2006-8-17 23:39:12 | 显示全部楼层 |阅读模式
演示:http://bbs.sowangzhi.com/logging.php?action=login
作者:SoWangZhi (http://www.SoWangZhi.com) 转载请保留,谢谢!

作用:会员可使用email登录,增加登录成功机会
适用版本discuz!所有(本修改以DZ4.0为例)
使用本修改的前提:后台设置只允许一个 Email 地址只能注册一个用户名

修改文件两个:logging.php和模板login.htm、nopermission.htm

修改方法:
1、logging.php找

  1. $field = isset($loginfield) && $loginfield == 'uid' ? 'uid' : 'username';
复制代码

替换为

  1. //------- Add Email login by SoWangZhi.com // 前提:后台必须设置一个 Email 地址只能注册一个用户名
  2. //        $field = isset($loginfield) && $loginfield == 'uid' ? 'uid' : 'username';
  3.         if(isset($loginfield)) {
  4.                 if($loginfield == 'uid') {
  5.                         $field = 'uid';
  6.                 } elseif($loginfield == 'email' && !$doublee) {
  7.                         if(!isemail($username)) {
  8.                                 showmessage('profile_email_illegal');
  9.                         }
  10.                         $field = 'email';
  11.                 } else {
  12.                         $field = 'username';
  13.                 }
  14.         }
  15. //------- end
复制代码

接着找

  1. m.username AS discuz_user
复制代码

后面添加

  1. , m.email AS discuz_email
复制代码

接着找

  1. if($member['discuz_uid'] && $member['discuz_pw'] == $md5_password) {
复制代码

替换为

  1. //------- Add Email // && $member['discuz_email']
  2.                 if($member['discuz_uid'] && $member['discuz_email'] && $member['discuz_pw'] == $md5_password) {
复制代码


2、login.htm和nopermission.htm


  1. <input type="radio" name="loginfield" value="username" onclick="document.login.username.focus();" checked="checked" />{lang username}:
复制代码

下面加

  1. <!--{if !$doublee}-->
  2. <input type="radio" name="loginfield" value="email" onclick="document.login.username.focus();" />{lang email}:
  3. <!--{/if}-->
复制代码


完毕!

[ 本帖最后由 SoWangZhi 于 2006-8-20 07:30 编辑 ]
HY清风 发表于 2006-8-18 01:00:40 | 显示全部楼层
先支持下!
回复

使用道具 举报

M55 发表于 2006-8-18 01:17:35 | 显示全部楼层

不太明白什么意思??

是不是说可以将 E_mail 地址当用户名登陆???
回复

使用道具 举报

 楼主| SoWangZhi 发表于 2006-8-18 01:19:25 | 显示全部楼层
原帖由 M55 于 2006-8-18 01:17 发表
是不是说可以将 E_mail 地址当用户名登陆???


是的

增加会员登录机会,三个选项不能都忘了吧 呵呵
回复

使用道具 举报

HY清风 发表于 2006-8-18 01:19:42 | 显示全部楼层
HY清风 收录提示
我很赞同,收录到 Discuz! 5.0『插件.风格.美化.功能』HY清风 收集整理贴!
https://discuz.dismall.com/thread-359738-1-1.html
感谢你发布或推荐优秀作品给本贴!
推荐方式A、回复此贴  B、论坛短消息 PM 我!点这里PM我
回复

使用道具 举报

M55 发表于 2006-8-18 01:32:15 | 显示全部楼层

如果是这样,那不去试试就不爽啦!

现在就去!
回复

使用道具 举报

888tjy 发表于 2006-8-19 12:10:45 | 显示全部楼层
支持...重点支持
回复

使用道具 举报

good2002 发表于 2006-8-19 12:25:48 | 显示全部楼层
好主意:)
回复

使用道具 举报

涸辙之鲋 发表于 2006-8-19 12:28:29 | 显示全部楼层
我来了~
回复

使用道具 举报

涸辙之鲋 发表于 2006-8-19 12:28:51 | 显示全部楼层
等你等到我心痛~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-22 09:37 , Processed in 0.042694 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表