如何限制一个网页必须由另外一个或几个中的一个连接过来。

benchozhang 2003-08-29 08:18:06
RT
...全文
69 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
benchozhang 2003-08-31
  • 打赏
  • 举报
回复
顶一下
benchozhang 2003-08-31
  • 打赏
  • 举报
回复
feel8(准备早起的鸟) ,有你的代码,上面的问题解决了。
但是我又遇到一个棘手的问题。也是残留上一次的内容,直到刷新后才变为正确的。
有什么办法可以通过在网页onload或者重新获得焦点等的手段来彻底刷新网页。我试过在onfocus()时用refresh()也不能使残留内容刷新。不知道怎样解决这个问题。是不是可以用删除缓冲区的内容,甚至关闭浏览器缓冲区。有谁能解决的。我另加30分
sports98 2003-08-30
  • 打赏
  • 举报
回复
如果你的A与B不在同一个站点上的话,你可以.....

考虑使用COOKIE,

总体来说,如果可以实现使用COOKIE,以及SESSION认证的话,比你单纯的依靠HTTP_REFERER要准确的多.
sports98 2003-08-30
  • 打赏
  • 举报
回复
用session检测把,将你允许访问的几个页面增加session标记变量,比如说$_SESSION['canlogin']=".....";

然后在要访问的页面内判断这个变量,如果你确信资料的话,可以将省去判断session变量值的步骤而直接判断SESSION变量是否存在,如果存在访问合法,否则失败

如果担心SESSION变量与其他发生冲突则判断值...
bonniewater 2003-08-30
  • 打赏
  • 举报
回复
mark
feel8 2003-08-29
  • 打赏
  • 举报
回复


从a正常进入b后,再返回a,在a的地址栏里打b的地址,我这边不用刷新还是提示错误


这样行不??
<?
echo"<meta http-equiv=\"Pragma\" content=\"no-cache\">";
echo"<meta http-equiv=\"no-cache\">";
echo"<meta http-equiv=\"Expires\" content=\"-1\">";
echo"<meta http-equiv=\"Cache-Control\" content=\"no-cache\">";
if(!$_SERVER['HTTP_REFERER'] or $_SERVER['HTTP_REFERER']!="http://localhost/1.php"){
echo "错误:(";
}else{
echo "正确:)";
}
?>


benchozhang 2003-08-29
  • 打赏
  • 举报
回复
不行,我要解决的问题是网页中残留着以前的东西,我上面第2贴中也说明了情况。这个问题没有解决
benchozhang 2003-08-29
  • 打赏
  • 举报
回复
许多时候都遇到这种问题,就是数据,变量变了,但是在网页上总是残留着之前的东西,非得刷新一下不可。这样会严重影响判断数据。有谁知道怎样解决
feel8 2003-08-29
  • 打赏
  • 举报
回复
<?
if(!$_SERVER['HTTP_REFERER'] or $_SERVER['HTTP_REFERER']!="http://localhost/1.php"){
echo "错误:(";
}else{
echo "正确:)";
}
?>

第一行中的http://localhost/1.php换成你的a窗口地址。
benchozhang 2003-08-29
  • 打赏
  • 举报
回复
有个问题:从A窗口到B窗口是合法的,所以从A连接到B,显示正确。如果不是从A直接连接到B,就显示错误。我先从A连接到B,正确。然后再回到A,直接输入地址进入B,则显示为正确,一定要刷新一下才正常显示错误。请问怎样解决这个问题
feel8 2003-08-29
  • 打赏
  • 举报
回复
<?php
echo $_SERVER['HTTP_REFERER'];
?>

将返回上一页面的url,
可以将他的结果和你需要从哪个网址过来,相比较,相同则允许浏览,否则返回错误提示。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧