用asp或js做禁止直接访问页面的代码

来源:百度知道 编辑:UC知道 时间:2024/05/14 19:46:31
在第一个页面当中,设置了输入密码后转向,转到第二个页面,但第二个页面如果可以直接打开,那第一个页面就如同虚设,那么,如何可以让第二个页面打开的时候检测,如果是从第一个页面转向而来的,那么就正常显示,如果是直接从流览器输入的地址,那么就提示错误信息。
我在第一个页面跟第二个页面分别做了如下的代码:

第一个页面的转向:

<script language="JavaScript" type="text/JavaScript">
<!--
window.location='shownews1.asp?id=<%=owen%>';
//-->
</script>

第二个页面的提示:

<%owen=request("id")%>
<%
dim ComeUrl
ComeUrl=instr(Request.ServerVariables("HTTP_HOST"))
if ComeUrl="" then
response.write "<br><p align=center><font color='red'>对不起,为了资料安全,不允许直接输入地址访问本系统的资料流览页面。"&ComeUrl&"</font></p>"
response.end
else
%>
文章显示内容
<%end if%>

不过,第二个页面的comeurl返回的值无论如何都是是空的,所以总是提示不允许访问,而不是下面的文章显示内容。请帮忙修正,如何可以提取到上一页的来路!

instr()
函数用错地方了吧!

instr(A,B)函数是返回某字符串在另一字符串中第一次出现的位置

这里没必要用这个函数

直接
ComeUrl=Request.ServerVariables("HTTP_HOST")

就OK了!