假设我们有一个页面(page1.php),它有两个链接,它们在同一页面上引用(page2.php)。我想知道哪个链接引导用户在page2.php上。因为我想在page2.php中控制一些访问权限。我搜索了很多,并在ajax,脚本和表单中找到了一些代码。有没有更简单的解决方案?
答案 0 :(得分:1)
在page1.php上,您可以向链接添加GET参数。因此,您在路径后添加?param_name=value
。像这样:
<a href=page2.php?link=Link1>Page 2 </a>
<a href=page2.php?link=Link2>Page 2 </a>
当用户点击链接时,传递的参数的值将转发到链接页面。它们都存储在$_GET[]
数组中。通过将参数名称添加为键(如此$_GET('param_name')
,您可以获取值。
因此,对于page2.php,您可以检查$_GET['link']
的值,以确定点击了哪个链接。这段代码应该有效:
<?php
if ($_GET['link'] == 'Link1') {
// do stuff for first link
}
if ($_GET['link'] == 'Link2') {
// do stuff for second link
}
?>
但是,您需要注意,用户可以轻松操作获取参数。因此,URL被调整。如果您正在寻找安全的方式,您应该查看POST参数和表单。
有关获取参数的更多信息,请查看php手册:http://php.net/manual/de/reserved.variables.get.php
答案 1 :(得分:0)
您可以将URL参数添加到链接并在第2页上处理它们。
<a href="page2.php?src=foo">First Link</a>
<a href="page2.php?src=bar">Second Link</a>
在第二页上你可以处理它们:
<?php
if ($_GET["src"]=="foo") {
// came from first link
}
if ($_GET["src"]=="bar") {
// came from second link
}
?>