我需要检测用户刚刚单击的位置 - 因为我的 AJAX 内容需要根据要插入的源页面以不同方式显示。
如果要进入 about.php,它只需要是数据,但如果要进入 about-main.php,它需要是整个中间列,因此需要围绕数据的页眉/页脚包装器。
通过 AJAX 调用的 html 保存在一个 php 页面中,该页面使用此代码来查看谁在询问,然后适当地格式化 HTML 响应。
$array[] = "/cf/about.php";
$array[] = "/cf/about/about-main.php";
$array[] = "/cf/about/other-page.php";
$ispage = "";
foreach ($array as $value) {
if ($_SERVER['HTTP_REFERER'] != $value) {
$ispage = "";
} else {
$ispage = "woot";
}
}
if ($ispage == "woot") {
echo $content;
} else {
include_once 'about-header.php';
echo $content;
include_once 'about-footer.php';
}
问题是...... HTTP_REFERER 似乎有点命中注定。当我在网络上工作时它工作得很好,但我已经在家里的电脑上尝试过它显然完全无法工作 - 结果太可怕了:o
还有另一种方法可以实现这一目标吗?我想可以使用会话变量,但我没有太多经验!
任何和所有提示/提示都表示赞赏;)谢谢!
编辑:
该页面实际上是一个员工资料页面。它的正常位置是 about.php,第二列 div 显示一个缩略图网格,单击该网格时,通过 AJAX 在该位置加载配置文件。所有漂亮而简单的 - 后退按钮重新加载照片网格。
问题是,每个工作人员还需要一个静态页面。我在 about/staff-name.php 创建了这些。内容是一样的。我希望服务器检测是否有人直接访问了 about/staff-name.php,如果是,请在其周围加上页眉/页脚。
如果请求来自照片网格(即 AJAX),则不需要页眉/页脚包装器。
明白了吗?:o
1) 如果 AJAX 请求 - 没有包装器 2) 如果不是 AJAX 请求 - 添加页眉/页脚包装器