ASP做后台长时间没操作会被取消管理权限,如何在长时间没有操作之后能自动跳转到登入页面?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP做后台长时间没操作会被取消管理权限,如何在长时间没有操作之后能自动跳转到登入页面?相关的知识,希望对你有一定的参考价值。
<%option explicit%>
<html>
<!--#include file="myconn.asp"-->
<!--#include file="inc/function.asp"-->
<!--#include file="inc/md5.asp"-->
<!--#include file="config.asp"-->
<%
Response.Write "<SCRIPT LANGUAGE=javascript>"
Response.Write "if (top.location != self.location)top.location=self.location;"
Response.Write "</SCRIPT>"
dim datestrnow
datestrnow="fj49gtfnsl"
Response.Cookies("test_str") = datestrnow
If Request.Cookies("test_str") = datestrnow Then
Response.Cookies("test_str")=""
Response.Cookies("test_str").expires=dateadd("s",-2,now())
else
response.Write "<font color='red'>您的浏览器不支持Cookie,请开启...</font>"
response.End()
End if
if trim(request.Form("mycount"))<>"" and trim(request.Form("mypasswd"))<>"" and issafestr(trim(request.Form("mycount"))) and issafestr(trim(request.Form("mypasswd"))) and isselfrefer() then
if trim(request.Form("yanzhen"))<>trim(Session("GetCode")) then
response.Redirect "error.asp?msg="&server.URLEncode("验证码不正确!")&"&url=login.asp"
response.End()
end if
call conn_open()
set rs=server.CreateObject("adodb.recordset")
sql="select * from admin_xys where ax_count_s='"&trim(request.Form("mycount"))&"'"
rs.open sql,conn,1,3
if rs.eof then
call conn_close()
response.Clear()
response.Redirect("error.asp?msg=用户名不存在&url=login.asp")
response.End()
else
if rs("ax_passwd_s")<>md5(trim(request.Form("mypasswd"))) then
call conn_close()
response.Clear()
response.Redirect("error.asp?msg=密码不正确&url=login.asp")
response.End()
else
response.Cookies("site_name")=site_manager_name
response.cookies("site_name").Expires=DateAdd("n",20,Now())
response.Cookies("admincount")=rs("ax_count_s")
response.cookies("admincount").Expires=DateAdd("h",4,Now())
'采用session安全验证检查的用户名
session(site_manager_name)=rs("ax_count_s")
'检查管理员级别
session("admin_lvl_n")=rs("ax_lvl_n")
response.Cookies("relname")=rs("ax_name_s")
response.cookies("relname").Expires=DateAdd("h",4,Now())
response.Cookies("lognum")=rs("ax_lognum_n")+1
response.cookies("lognum").Expires=DateAdd("h",4,Now())
response.Cookies("lastlogtime")=rs("ax_lastlog_d")
response.cookies("lastlogtime").Expires=DateAdd("h",4,Now())
response.Cookies("login_time")=now()
response.cookies("login_time").Expires=DateAdd("h",4,Now())
rs("ax_lognum_n")=rs("ax_lognum_n")+1
rs("ax_lastlog_d")=now()
rs.update
call conn_close()
response.Redirect "index.asp"
response.End()
end if
end if
end if
%>
<style type="text/css">
<!--
body
background-color: #14163D;
-->
</style><head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title><%=site_name%> :: 网站管理登陆入口 :: </title>
请各位高手们帮帮忙,请的源代码上修改!谢谢了!
session.Timeout=60
后面时间代表分钟本回答被提问者采纳 参考技术D session获取第一次登录时间
下次对比时间
时间大了就跳转 第5个回答 2011-02-22 如果你是用session,那么可以在blobal.asa的session.end 里面写个东西,你用cookies,我就不知道了。
如何设置后台管理员的权限详细请进来看
首先在数据库里把管理员权限设置两个.
一个:超级管理员
一个:管理员
然后,后台是一个窗口两个页面,超级管理员进的是一个页面,管理员进另一个页面
请问应该用什么代码!
首先进入后台展开会员中心。
点击"新增加会员用户",在这里可以增加新的用户,注册类型选择管理员即可。
也可以把普通会员(或其他组)的用户转到管理员组,以普通会员为例,我们点击(图1)的普通会员,进入会员管理界面。
我们只需要勾选需要转为管理员的用户,然后在类别转移里面转到管理员组即可。
接下来我们需要设置管理员的权限,点击(图1)的管理员组,进入管理员列表,我们给新增加的管理员设置一下管理权限即可。
在权限设置界面有两种权限,一种设置基本权限,一种设置信息投稿发布权限,如果对某个权限不熟悉,大家可以自己勾选一些权限,然后测试看效果来体会一下。 参考技术A 设置后台管理员的权限的步骤:
1、你在数据库表里加一个字段,比如字段名为:man 你可以把超级管理员的值用1表示,管理员用0表示,
然后例如:if man=1
form2.open
else man= 0
form3.open。
2、用Cookies或者Session设定指定账号的级别,进而控制它的操作权限。 参考技术B <%@language=vbscript codepage=936 %>
<!--#include file="Conn.asp"-->
<!--#include file="../Inc/Config.asp"-->
<!--#include file="inc/md5.asp"-->
<%
dim sql,rs
dim username,password,CheckCode
username=replace(trim(request("username")),"'","")
password=replace(trim(Request("password")),"'","")
CheckCode=replace(trim(Request("CheckCode")),"'","")
if UserName="" then
FoundErr=True
ErrMsg=ErrMsg & "<br><li>用户名不能为空!</li>"
end if
if Password="" then
FoundErr=True
ErrMsg=ErrMsg & "<br><li>密码不能为空!</li>"
end if
if CheckCode="" then
FoundErr=True
ErrMsg=ErrMsg & "<br><li>验证码不能为空!</li>"
end if
if session("CheckCode")="" then
FoundErr=True
ErrMsg=ErrMsg & "<br><li>你登录时间过长,请重新返回登录页面进行登录。</li>"
end if
if CheckCode<>CStr(session("CheckCode")) then
FoundErr=True
ErrMsg=ErrMsg & "<br><li>您输入的确认码和系统产生的不一致,请重新输入。</li>"
end if
if FoundErr<>True then
password=md5(password)
set rs=server.createobject("adodb.recordset")
sql="select * from Admin where password='"&password&"' and username='"&username&"'"
rs.open sql,conn,1,3
if rs.bof and rs.eof then
FoundErr=True
ErrMsg=ErrMsg & "<br><li>用户名或密码错误!!!</li>"
else
if password<>rs("password") then
FoundErr=True
ErrMsg=ErrMsg & "<br><li>用户名或密码错误!!!</li>"
else
RndPassword=GetRndPassword(16)
rs("LastLoginIP")=Request.ServerVariables("REMOTE_ADDR")
rs("LastLoginTime")=now()
rs("LoginTimes")=rs("LoginTimes")+1
rs("RndPassword")=RndPassword
rs.update
session.Timeout=SessionTimeout
session("AdminName")=rs("username")
session("AdminPassword")=rs("Password")
session("RndPassword")=RndPassword
rs.close
set rs=nothing
call CloseConn()
Response.Redirect "default.asp"
end if
end if
rs.close
set rs=nothing
end if
if FoundErr=True then 参考技术C 如果是超级管理员的话就进行超连接location.href="";里面写连接的路径
如果是管理员一样的道理
当然跳转叶面有许多中方式
如果是JSP页面的话可以用response.sendrection("跳转的路径");
如果是sevlet叶面的话也可以用这样的方法跳转
也可以用request.RecendCript("").forward.(request,resopnse);
但是前提是必须要要有那两个页面 参考技术D 你在数据库表里加一个字段,比如字段名为:man 你可以把超级管理员的值用1表示,管理员用0表示,
然后例如:if man=1
form2.open
else man= 0
form3.open
以上是关于ASP做后台长时间没操作会被取消管理权限,如何在长时间没有操作之后能自动跳转到登入页面?的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET Core 6框架揭秘实例演示[21]:如何承载你的后台服务