2

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

$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

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

4

3 回答 3

2

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

<a href="window.history.go(-1);">previous page</a>
于 2013-09-12T12:33:16.827 回答
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']);
于 2013-09-12T12:33:40.173 回答
0

这个怎么样 :: javascript+php

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

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

于 2014-04-26T12:17:37.883 回答