账号通
    

账号  

密码  

9686

查看

27

回复
主题:改进KesionCMS V8.0x版本会员登录允许使用会员ID,Email及用户名的修改 [收藏主题] 本贴被认定为精华 转到:  
科汛官方 当前离线

47268

主题

145

广播

405

粉丝
添加关注
级别:管理员

用户积分:101604 分
登录次数:7935 次
注册时间:2006/12/7
最后登录:2023/12/14
科汛官方 发表于:2012/4/10 9:44:46   | 显示全部帖子 查看该作者主题 楼主 
科汛在线考试系统(NET)

KesionCMS V8.0x默认只允许会员用会员名登录,我们可以通过小修改,允许使用会员名,会员ID及email进行登录。



具体修改方法如下:



打开user/checkuserlogin.asp,并找到如下代码

   PassWord=MD5(PassWord,16)

    Dim UserRS:Set UserRS=Server.CreateObject("Adodb.RecordSet")

    UserRS.Open "Select top 1 * From KS_User Where UserName='" &UserName & "' And PassWord='" & PassWord & "'",Conn,1,3

修改替换为以下代码即可:



            UserName=lcase(UserName)

   PassWord=MD5(PassWord,16)

   Dim Param:Param=" Where PassWord='" & PassWord & "'"

   If InStr(UserName,"@")<>0 Then

    Param=Param & " and Email='"& UserName & "'"

   ElseIf Len(UserName)<10 and IsNumerIc(UserName) Then

    Param=Param & " and (UserId=" & KS.ChkClng(UserName) & " or username='" & UserName &"')"

   Else

    Param=Param & " and UserName='" &UserName & "'"

   End If

    Dim UserRS:Set UserRS=Server.CreateObject("Adodb.RecordSet")

    UserRS.Open "Select top 1 * From KS_User" & Param,Conn,1,3







再往下找,增加红色的这行。



    ElseIF UserRS("Locked")=2 Then

      UserRS.Close:Set UserRS=Nothing

      KS.Die "<script>alert('您的账号还没有通过认证!');history.back();</script>"

    Else

               UserName=UserRS("UserName")

            '-----------------------------------------------------------------

      '系统整合

      '-----------------------------------------------------------------

      Dim API_KS,API_SaveCookie,SysKey

      If API_Enable Then

 
KesionCMS,,
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
<上一主题 | 下一主题 >
Powered By KesionCMS Version X1
厦门科汛软件有限公司 © 2006-2016 页面执行0.06299秒 powered by KesionCMS 9.0