日期:2014-05-17  浏览次数:20843 次

ASP 权限控制问题 !!! 怎么这样还是不行!!!!
下面是我的代码   怎么总是不能成功!   请高手指点   是代码问题还是方法问题?   或者请高手   指明可行的办法     在此谢过了!  

  我想实现一个权限的功能,   只分2级      
1为   管理员  
2为   普通用户  

用户数据表   有Username   ,   pass   ,power   (其中   Power为权限字段,数字类型   )  

(1)     loginFinsh.asp   页面  
<!--#include   file= "conn.asp "-->  
<%  
strUse=trim(request.Form( "UserName "))  
strPass=trim(request.Form( "pass "))  
set   rs=server.CreateObject( "ADODB.Recordset ")  
strSQL   =   "select   *   from   sysdba.UserTable   where   UserName= ' "   &   strUse   &   " '   and   pass= ' "   &   strPass   &   " ' "        
rs.Open   strSQL,Conn,1,1  

if   rs.EOF   and   rs.BOF   then  
        Response.Write   " <font   size= '5 '> 登陆失败,请确定用户名和密码!! </font> <br> "  
Response.Write   " <a   href= 'login.asp '> 返回 </a> "  
        else  
        Response.Redirect( "main.asp ")  
          Session(UserName)=rs( "UserName ")  
          Session(Pass)=rs( "strPass ")  
          Session(Power)=rs( "power ")          
end   if  
rs.close  
Conn.close  
set   rs=nothing  
set   Conn=nothing  
%>  


原本想   靠POWER   权限来隐藏按钮,来达到权限区分的目的,但总不成功  

只好以进入   另个页面先来判断   用户的权限    

(2)   part.asp   (此页是在数据库返回的数据,详细内容页面)  

页首加下面的代码有问题  
<%  
      if   Session(power) <> 1   Then    
            response.write( " <script> alert( '您没有权限修改数据! ');history.back(); </script> ")  
      else         %>    
       
      ..内容略...  
      <%end   if%>              


现在的问题是     进(2)   part.asp页面的时候   无论   是1或者2   都不能进入!!!!!        


------解决方案--------------------
在part.asp 的代码最前面输入
Response.Write "Session " & Session( "power ")

看看Session( "power ") 的值是什么?