我有一个有几页的网站。 Page1,Page2,..等
我不希望用户直接在浏览器中访问Page2发布其URL,因为只能从Page1访问Page2。在PHP中,我应该在Page2中编写什么来知道用户之前是在Page1中并点击了一个链接或者将他或她带到了Page2的东西?感谢。
答案 0 :(得分:4)
您可以使用
$_SERVER['HTTP_REFERER']
虽然你不能每次都依赖它。
答案 1 :(得分:2)
您可以使用PHP sessions。
<强> page1.php中强>
session_start();
$_SESSION['pages_visited'][basename(__FILE__)] = true;
<强>使page2.php 强>
session_start();
$_SESSION['pages_visited'][basename(__FILE__)] = true;
if (!isset($_SESSION['pages_visited']['page1.php']) || !$_SESSION['pages_visited']['page1.php']) {
header('Location: page1.php');
exit;
}
答案 2 :(得分:0)
为了实现可靠的机制,您可以使用会话机制:http://www.php.net/manual/en/book.session.php
在这种情况下,有关访问页面的信息可以存储在服务器端,并将通过会话ID检索,会话ID存储在用户的cookie / GET / POST变量中