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

 找回密码
 立即注册
搜索

免费放~ UCH2.0 邮箱/用户名/手机号登录 无错~

[复制链接]
micwolfzhou 发表于 2009-8-9 11:02:37 | 显示全部楼层 |阅读模式
UCHome插件
语言编码: GBK简体 
插件名称: 登录插件
插件作者: Micwolfzhou
适用版本: UCHome 2.0
本帖最后由 micwolfzhou 于 2009-8-9 12:19 编辑

今天看了一贴 https://discuz.dismall.com/viewth ... page%3D2&page=1 发现有用户说 支持手机号。考虑到手机号验证登录功能,在这里使用身份通的手机功能。只有通过身份通认证的用户才可以使用手机登录。
2.jpg
1.jpg

重要说明:如果你的UCH 站内已经有人用 Email或与手机号做为用户名的,将不适合本插件。如果你的UCH是新站或没有上述情况,请向下看

1、打开source/function_common.php
在?>之前加入
  1. //检查手机号是否有效
  2. function ismobile($str){
  3.       return preg_match("/^(((1[3|5|8]{1}[0-9]{1}))[0-9]{8})$/", $str);}
复制代码
2、打开language/lang_showmessage.php 找到
//mt.php
在上面加入
  1. 'no_privilege_mobile_login' =>'你必须使用身份通认证才能使用手机号登陆',
复制代码
3、打开source/do_login.php
找到 $password = $_POST['password'];
        $username = $_POST['username'];
        $cookietime = intval($_POST['cookietime']);
在下方加入
  1. if (isemail($username)) {

  2.                 $sqlgetuser = "SELECT uid,email,emailcheck FROM ".tname("spacefield")." WHERE email='$username'";

  3.                 $querygetuser = $_SGLOBAL['db']->query($sqlgetuser);

  4.                 $getuserid = $_SGLOBAL['db']->fetch_array($querygetuser);

  5.                 if ($getuserid['emailcheck'] == 0 && $_SGLOBAL['db']->num_rows($querygetuser) != 0) {

  6.                         showmessage('no_privilege_email', 'do.php?ac='.$_SCONFIG['login_action']);

  7.                 }

  8.                 $getuserid = $getuserid['uid'];

  9.                 $sqlgetuser = "SELECT uid,username FROM ".tname("space")." WHERE uid='$getuserid'";

  10.                 $querygetuser = $_SGLOBAL['db']->query($sqlgetuser);

  11.                 $getusername = $_SGLOBAL['db']->fetch_array($querygetuser);

  12.                 $username = trim($getusername['username']);

  13.         }  //邮箱登录

  14.         
  15.         if (ismobile($username)) {

  16.                 $sqlgetuser = "SELECT owner FROM ".tname("idauths")." WHERE mobile='$username'";

  17.                 $querygetuser = $_SGLOBAL['db']->query($sqlgetuser);

  18.                 $getuserid = $_SGLOBAL['db']->fetch_array($querygetuser);

  19.                 if ($getuserid) {

  20.                 $getuserid = $getuserid['owner'];

  21.                 $sqlgetuser = "SELECT uid,username FROM ".tname("space")." WHERE uid='$getuserid'";

  22.                 $querygetuser = $_SGLOBAL['db']->query($sqlgetuser);

  23.                 $getusername = $_SGLOBAL['db']->fetch_array($querygetuser);

  24.                 $username = trim($getusername['username']);

  25.                             } else {
  26.                       showmessage('no_privilege_mobile_login', 'do.php?ac='.$_SCONFIG['login_action']); }

  27.                

  28.         }  //手机号登录
复制代码
4、修改template/default/index.htm 与do_login.htm 办法见
https://discuz.dismall.com/viewth ... page%3D2&page=1
只需将上述地址中的
用户名或Email  改成 用户名/Email/手机号  就行了

5、登录UC 后台,不是UCH。 UC 注册设置  禁止的用户名 增加
*@*
13*
15*
18*
确定
   

演示地址 : http://www.5iwuxi.cn

评分

2

查看全部评分

回复

使用道具 举报

 楼主| micwolfzhou 发表于 2009-8-9 11:24:02 | 显示全部楼层
自己顶下~ 不能沉了~
回复

使用道具 举报

keete 发表于 2009-8-9 11:29:57 | 显示全部楼层
兄弟,手机号检验错了。手机号13几的,还有15xxxxx,18xxxx.
回复

使用道具 举报

gtv888 发表于 2009-8-9 11:34:24 | 显示全部楼层
呵呵。顶起来。好东西。
回复

使用道具 举报

 楼主| micwolfzhou 发表于 2009-8-9 11:34:26 | 显示全部楼层
3# keete

多谢提醒。我改下
回复

使用道具 举报

uuvd 发表于 2009-8-9 12:10:08 | 显示全部楼层
好东西啊.顶一下你.
回复

使用道具 举报

luoguibin 发表于 2009-8-9 12:48:04 | 显示全部楼层
占们编辑,好东西
回复

使用道具 举报

dxscyjy 发表于 2009-8-9 12:59:24 | 显示全部楼层
大学生创业家园 (测试用户名test  密码test)
主要为想创业的大学生提供一个结交共同志向的朋友并进行交流的家园。内容有大学生创业故事,大学生创业指导,大学生创业问答,大学生创业项目等,正在发展中。
回复

使用道具 举报

blackbee 发表于 2009-8-9 13:42:01 | 显示全部楼层
超级强悍!!支持一把

www.assns.cn
回复

使用道具 举报

wurongzong 发表于 2009-8-9 13:48:19 | 显示全部楼层
((em:07)) THANKYOU
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-17 05:02 , Processed in 0.113357 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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