使用php传回精确的上一页

时间:2013-09-12 12:28:09

标签: php url hyperlink

我的网站上有一个活动日历,我想将用户传回上一页。目前我正在使用几个PHP函数来执行此操作,但它没有有效地传回上一页,I.E。因为前一个网址使用&,所以它会被新的超链接阻止。这是我正在使用的:

$url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; // Get The URL

<a href=\"event.php?id=$event_id&url=$url\"> // Pass Url To Next Page

if(isset($_GET['url'])) {
    $backlink = $_GET['url'];
    $user_backlink = "<a href=\"$backlink\"><div id=\"posts\" class=\"sidebarSectionLink sideback\">Back To Results</div></a>";
} else {
    $user_backlink = "<a href=\"events.php\"><div id=\"posts\" class=\"sidebarSectionLink sideback\">Start A Search</div></a>";
}

echo $user_backlink // Link Back to previous

问题是这只有echo http://www.website.co.uk/events.php?type=def(之后没有其他内容) - 我怎样才能让它传递完整的url字符串?

3 个答案:

答案 0 :(得分:2)

使用javascript代替PHP可以省去很多麻烦:

<a href="window.history.go(-1);">previous page</a>

答案 1 :(得分:0)

您需要使用urlencode:

http://php.net/manual/fr/function.urlencode.php

所以

<a href=\"event.php?id=$event_id&url=$url\">

需要:

<a href=\"event.php?id=$event_id&url=".urlencode($url)."\">

那么结束,

$backlink = $_GET['url'];

需要:

$backlink = urldecode($_GET['url']);

答案 2 :(得分:0)

怎么样:: javascript + php

echo "<script language=javascript> javascript:history.back();</script>";

它将与浏览器中的上一个按钮相同