1

数以千计的 ? 查询列在数百个 html 页面中。当单击这些查询之一并将其传递到特定页面时:-

<?php 
      $obtained= $_GET['query']; 

如何跟踪它来自哪里的 URI 并将其粘贴到这里?:-

      file_get_contents(../folder_of_pages_contain_queries/originated_page.html);
?>
4

1 回答 1

1

在第二页中使用$_SERVER['HTTP_REFERER']来确定请求的来源。

如果要在第二页粘贴内容,可以尝试:

if (isset ($_SERVER['HTTP_REFERER']) && ! empty ($_SERVER['HTTP_REFERER']))
{
    $contents = file_get_contents ($_SERVER['HTTP_REFERER']);
}

这是一个例子:

文件1.html:

Link 1: <a href="test.php?query=link1">link 1</a>
Link 2: <a href="test.php?query=link2">link 2</a>
Link 3: <a href="test.php?query=link3">link 3</a>

文件2.html:

Link 1: <a href="test.php?query=link1">link 1</a>
Link 2: <a href="test.php?query=link2">link 2</a>
Link 3: <a href="test.php?query=link3">link 3</a>

测试.php:

$query = $_GET['query'];
$referer = $_SERVER['HTTP_REFERER'];

根据您的测试用例:

  1. 如果用户单击link 2from file1.html,则 的值为$query“link2”,$referer将为“file1.html”。
  2. 如果用户点击link 3from file2.html,那么 的值$query将是“link3”,$referer将是“file2.html”。
于 2013-08-11T15:05:48.967 回答