昨天做权限管理,给普通管理员分配权限,做法是:
1,高级管理员表
2,普通管理员表(其中包含可管理的文件夹名称)
3,文件夹表
在普通管理员管理的时候,需要检验权限
所以现在主要要进行的是取到页面的当前路径。
我在网络上找到了两个方法
方法一:url=trim("<script language=javascript>document.write(location.href)</script>")
方法二:<%  
                dim str,host,url,keyword,full 
                str="http://"; 
                host = Request.ServerVariables("HTTP_HOST") 
                url = Request.ServerVariables("PATH_INFO") ’或url  
                keyword = Request.ServerVariables("QUERY_STRING")  
                if keyword <> "" then  
                full = str&host&url&"?"&keyword 
                 else 
                full = str&host&url 
                 end if 
                %>
取到路径以后就可以根据权限去验证了(这时候会用到SPLIT()):
if instr(url,权限文件夹名称)<>0 then
有权限
end if
按照道理说应该可以了,但是
出现问题了:
在用方法一取到的路径时,怎么做就不可以,仔细输出验证的时候才发现只要在instr()中用参数url的时候就不可以取到应该取到的值,而把参数直接换成当前路径的字符串时就可以成功,为什么?
再用UCASE(URL)发现,输出的URL为空了。而LCASE(URL)则是正确的路径。
可见用方法一获取的URL可能不是字符串,但是用CSTR()转换后还是不行。???
 
尝试用方法二,成功了,。。。
(提示,此处没有必要把全部路径都取了,只要 url = Request.ServerVariables("PATH_INFO") 就够了。。。)
 
 
为什么方法一取当前路径不可以呢???
 
继续郁闷中,。。。。
 
 
 
见笑,见笑。。。