我想知道如何返回上一页...
我在搜索结果页面上,那里有很多结果。对于每个结果,都有一个选项,例如"给我发电子邮件"。
当用户单击它时,会打开一个厚框表单,其中要求用户提供其姓名和电子邮件 ID。当用户点击"发送以提交表单"时,将在我们的数据库中输入一个条目,并通过他/她的电子邮件ID向用户发送电子邮件。
问题是,提交表单后,我想将用户重定向到搜索结果页面,用户可以选择在其中发送电子邮件。
您可以使用 Ajax 进行表单提交,然后关闭 Thickbox。如果 Ajax 不是一个选项,您还可以使用引荐来源网址将用户重定向到上一页。
header("Location: ".$_SERVER["HTTP_REFERER"]);
更新:
由于某些浏览器有时不提供引荐来源网址,因此上述方法不起作用。解决方法是让厚框中的表单提供搜索页面的 URL,然后可用于重定向。
在"厚箱"窗体中,添加带有 URL 的隐藏元素。这可以通过JavaScript或PHP来完成。
然后,不要使用 HTTP_REFERER,而是使用隐藏元素的名称。
形式:<input type='hidden' name='searchUrl' value='http://the.search.url' />
PHP: header("Location: ".$_REQUEST["searchUrl"]);
记住会话的最后一个位置,并使用位置标头重定向到该位置。
将以下代码添加到要返回的页面=>
<?php
session_start();
$_SESSION["addresser"]="home.php";
?>
现在将以下代码添加到您拥有表单/或要返回的页面=>首先向表单添加一个隐藏字段=>
<input type="text" name="valid" hidden="hidden" readonly="readonly" value="true"/>
现在将以下 php 代码添加到此页面的顶部==>
<?php
session_start();
$location=$_SESSION["addresser"];
if($_SESSION["validate"]="true"){
header("location: $location");}
?>
还要将以下代码添加到提交表单的 php 文件中。
<?php
$_SESSION["validate"]=$_POST["valid"];
?>