标题:ASP 里怎么限定修改权限
只看楼主
flyforever81
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-5-23
 问题点数:0 回复次数:51 
ASP 里怎么限定修改权限
<!--#include file="conn.asp"-->
<%if session("admin")="1" then
exec="select * from test where id="&request.form("id")
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,3
rs("aa")=request.form("aa")
rs("cc")=request.form("cc")
rs("bb")=request.form("bb")
rs.update
rs.close
set rs=nothing
conn.close
set conn=nothing
response.redirect "list.asp"
else
response.redirect "list.asp"
end if
%>我现在可以实现的是某特定用户要么可以修改,要么不能修改,我需要实现的是改一次后再不能修改 ,请教各位大侠怎么解决?在下感激不尽!
搜索更多相关主题的帖子: 权限 ASP form request 
2007-05-23 14:48
shdyh977
Rank: 1
等 级:新手上路
威 望:1
帖 子:109
专家分:0
注 册:2007-5-22
得分:0 
你的问题意思不明确,是某个用户(同等权限下)对各条记录只允许改一次,还是所有用户对各条记录只允许改一次? 不同的问题解决的办法是不同的,请说的详细些
2007-05-23 14:55
flyforever81
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-5-23
得分:0 
以下是引用shdyh977在2007-5-23 14:55:04的发言:
你的问题意思不明确,是某个用户(同等权限下)对各条记录只允许改一次,还是所有用户对各条记录只允许改一次? 不同的问题解决的办法是不同的,请说的详细些

除了管理员用户其他所有用户对aa,bb,cc,3个变量只能修改一次

2007-05-23 15:01
shdyh977
Rank: 1
等 级:新手上路
威 望:1
帖 子:109
专家分:0
注 册:2007-5-22
得分:0 
有办法,在test表中加一个字段user_total(字符型)

<!--#include file="conn.asp"-->
<%if session("admin")="1" then //管理员
exec="select * from test where id="&request.form("id")
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,3
rs("aa")=request.form("aa")
rs("cc")=request.form("cc")
rs("bb")=request.form("bb")
rs.update

else //其他权限
exec="select * from test where id='"&request.form("id")&"'" and user_total in ("&session("admin")&")
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,3
if rs.eof then
rs("aa")=request.form("aa")
rs("cc")=request.form("cc")
rs("bb")=request.form("bb")
user_total = trim(rs("user_total"))
if user_total<>"" then
rs("user_total")=user_total + "," + session("admin")
else
rs("user_total")=user_total + session("admin")
end if
end if
end if
rs.close
set rs=nothing
conn.close
set conn=nothing
response.redirect "list.asp"

你看下行不
2007-05-23 15:22
flyforever81
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-5-23
得分:0 
以下是引用shdyh977在2007-5-23 15:22:05的发言:
有办法,在test表中加一个字段user_total(字符型)

<!--#include file="conn.asp"-->
<%if session("admin")="1" then //管理员
exec="select * from test where id="&request.form("id")
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,3
rs("aa")=request.form("aa")
rs("cc")=request.form("cc")
rs("bb")=request.form("bb")
rs.update

else //其他权限
exec="select * from test where id='"&request.form("id")&"'" and user_total in ("&session("admin")&")
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,3
if rs.eof then
rs("aa")=request.form("aa")
rs("cc")=request.form("cc")
rs("bb")=request.form("bb")
user_total = trim(rs("user_total"))
if user_total<>"" then
rs("user_total")=user_total + "," + session("admin")
else
rs("user_total")=user_total + session("admin")
end if
end if
end if
rs.close
set rs=nothing
conn.close
set conn=nothing
response.redirect "list.asp"

你看下行不

哥们,你有QQ吗?我加你QQ说行么?我的QQ31537546

2007-05-23 15:26
flyforever81
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-5-23
得分:0 

那样改了不行

2007-05-23 15:32
shdyh977
Rank: 1
等 级:新手上路
威 望:1
帖 子:109
专家分:0
注 册:2007-5-22
得分:0 
session里放用户的ID号, 告诉我出了什么错误
2007-05-23 15:37
shdyh977
Rank: 1
等 级:新手上路
威 望:1
帖 子:109
专家分:0
注 册:2007-5-22
得分:0 

我修正一下
<!--#include file="conn.asp"-->
<%if session("admin")="1" then //管理员
exec="select * from test where id="&request.form("id")
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,3
rs("aa")=request.form("aa")
rs("cc")=request.form("cc")
rs("bb")=request.form("bb")
rs.update

else //其他权限
exec="select * from test where user_total in ("&session("admin")&")
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,3
if rs.eof then
rs("aa")=request.form("aa")
rs("cc")=request.form("cc")
rs("bb")=request.form("bb")
user_total = trim(rs("user_total"))
if user_total<>"" then
rs("user_total")=user_total + "," + session("admin")
else
rs("user_total")=user_total + session("admin")
end if
end if
end if
rs.close
set rs=nothing
conn.close
set conn=nothing
response.redirect "list.asp"

再试一下

2007-05-23 15:40
flyforever81
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-5-23
得分:0 
回复:(shdyh977)session里放用户的ID号, 告诉我出了...
错误类型:
Microsoft VBScript 编译器错误 (0x800A0412)
必须是行中的第一个语句
/modifysave.asp, line 2, column 30
if session("admin")="1" then //管理员
-----------------------------^
2007-05-23 15:41
flyforever81
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-5-23
得分:0 
回复:(shdyh977)session里放用户的ID号, 告诉我出了...
您加我QQ说行吗?
2007-05-23 15:43



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-141820-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.094027 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved