loading...
首页 开放平台 问答求助 新手报到 官方公告
首页 > 交流论坛 > 开放平台 > 资源分享 让帝国cms支持手机号码登陆

让帝国cms支持手机号码登陆 复制链接

发布于:2016-03-27 13:18:37 | 只看该作者 | 关注作者 楼主

修改  e/member/class/member_loginfun.php  函数qlogin

(红色部分为修改过)7.2可以直接复制替换,其他版本最好修改红色部分

//登录

function qlogin($add){

global $empire,$dbtbpre,$public_r,$ecms_config;

if($ecms_config['member']['loginurl'])

{

Header("Location:".$ecms_config['member']['loginurl']);

exit();

}

$dopr=1;

if($_POST['prtype'])

{

$dopr=9;

}

$username=trim($add['username']);

$password=trim($add['password']);

if(!$username||!$password)

{

printerror("EmptyLogin","history.go(-1)",$dopr);

}

$tobind=(int)$add['tobind'];

//验证码

$keyvname='checkloginkey';

if($public_r['loginkey_ok'])

{

ecmsCheckShowKey($keyvname,$add['key'],$dopr);

}

$username=RepPostVar($username);

$password=RepPostVar($password);

$num=0;

/*

*查询会员附加表手机号码字段(也可以是其他字段,自己看着来调整)

*/

$useradd=$empire->fetch1("select userid from {$dbtbpre}enewsmemberadd where phone='$username' limit 1");

if($useradd[userid]){

    $r=$empire->fetch1("select ".eReturnSelectMemberF('*')." from ".eReturnMemberTable()." where ".egetmf('userid')."='$useradd[userid]' limit 1");

}else{

    $r=$empire->fetch1("select ".eReturnSelectMemberF('*')." from ".eReturnMemberTable()." where ".egetmf('username')."='$username' limit 1");

}



if(!$r['userid'])

{

printerror("FailPassword","history.go(-1)",$dopr);

}



$username=$r[username]; //重新复制用户名



if(!eDoCkMemberPw($password,$r['password'],$r['salt']))

{

printerror("FailPassword","history.go(-1)",$dopr);

}

if($r['checked']==0)

{

if($public_r['regacttype']==1)

{

printerror('NotCheckedUser','../member/register/regsend.php',1);

}

else

{

printerror('NotCheckedUser','',1);

}

}

//绑定帐号

if($tobind)

{

MemberConnect_BindUser($r['userid']);

}

$rnd=make_password(20);//取得随机密码

//默认会员组

if(empty($r['groupid']))

{

$r['groupid']=eReturnMemberDefGroupid();

}

$r['groupid']=(int)$r['groupid'];

$lasttime=time();

//IP

$lastip=egetip();

$lastipport=egetipport();

$usql=$empire->query("update ".eReturnMemberTable()." set ".egetmf('rnd')."='$rnd',".egetmf('groupid')."='$r[groupid]' where ".egetmf('userid')."='$r[userid]'");

$empire->query("update {$dbtbpre}enewsmemberadd set lasttime='$lasttime',lastip='$lastip',loginnum=loginnum+1,lastipport='$lastipport' where userid='$r[userid]'");

//设置cookie

$lifetime=(int)$add['lifetime'];

$logincookie=0;

if($lifetime)

{

$logincookie=time()+$lifetime;

}

$set1=esetcookie("mlusername",$username,$logincookie);

$set2=esetcookie("mluserid",$r['userid'],$logincookie);

$set3=esetcookie("mlgroupid",$r['groupid'],$logincookie);

$set4=esetcookie("mlrnd",$rnd,$logincookie);

//验证符

qGetLoginAuthstr($r['userid'],$username,$rnd,$r['groupid'],$logincookie);

//登录附加cookie

AddLoginCookie($r);

$location="../member/cp/";

$returnurl=getcvar('returnurl');

if($returnurl)

{

$location=$returnurl;

}

if(strstr($_SERVER['HTTP_REFERER'],"e/member/iframe"))

{

$location="../member/iframe/";

}

if(strstr($location,"enews=exit")||strstr($location,"e/member/register")||strstr($_SERVER['HTTP_REFERER'],"e/member/register"))

{

$location="../member/cp/";

$_POST['ecmsfrom']='';

}

ecmsEmptyShowKey($keyvname);//清空验证码

$set6=esetcookie("returnurl","");

if($set1&&$set2)

{

//易通行系统

DoEpassport('login',$r['userid'],$username,$password,$r['salt'],$r['email'],$r['groupid'],$r['registertime']);

$location=DoingReturnUrl($location,$_POST['ecmsfrom']);

printerror("LoginSuccess",$location,$dopr);

    }

else

{

printerror("NotCookie","history.go(-1)",$dopr);

}

}

    发布于:2017-01-21 | 只看该用户 沙发

    真的可以吗?!

    发布于:2017-02-05 | 只看该用户 板凳

    很不错,支持
    您需要登录后才可以发帖,登录 | 注册
      
      
    到底了,所以往后的每一步都在进步