带 Post 参数的 PHP 重定向
当将用户重定向到另一个网页同时保留 POST 参数时,传统的基于 JavaScript 的方法通过隐藏form 和 Submit() 脚本可能会遇到禁用 JavaScript 的问题。为了解决这个问题,PHP 提供了另一种方法,允许您直接通过 PHP 标头重定向来传输 POST 参数。
PHP 提供了在重定向位置之前设置 HTTP 状态代码的功能。通过将状态代码指定为 307(临时重定向),指示浏览器将重定向视为 POST 请求。这与默认状态代码 302(找到)形成对比,默认状态代码通常用于 GET 请求。
要在 PHP 中实现此技术,您可以使用以下代码:
<code class="php"> header('HTTP/1.1 307 Temporary Redirect'); header('Location: anotherpage.php');</code>
需要注意的是,根据 HTTP 规范,浏览器应提示用户确认是否要向新 URL 重新提交 POST 信息。但在实际应用中,Chrome、Safari等浏览器可能不会显示该提示,而Firefox则会出现确认框。根据您的应用程序的具体要求,应考虑这种潜在行为。
以上是如何在不使用 JavaScript 的情况下使用保留的 POST 参数实现 PHP 重定向?的详细内容。更多信息请关注PHP中文网其他相关文章!