“header()”php函数是否取消设置全局变量?

前端之家收集整理的这篇文章主要介绍了“header()”php函数是否取消设置全局变量?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在开发一个包含html表单的PHP脚本.

如果不是所有字段都以正确的方式填充,则脚本将发出错误信号,并使用头函数重定向回同一页面,并使用get方法错误变量设置为yes:

header("Location: registration_page.PHP?error_empty=yes");

我的脚本有一个错误处理部分,它突出显示包含错误的字段,但我想保持字段的值正确填充.

正如我在其他问题中找到的那样,我正在实现此功能

How can I keep a value in a text input after a submit occurs?

但问题是,当页面重新打开时,表单将不包含旧值.

我的问题是:有没有人知道头函数是否取消了$_REQUEST数组中的全局变量

你知道我可以采用什么样的解决方案吗?也许会话?

提前致谢,

利玛窦!

最佳答案
$_COOKIES将继续设置,但$_POST&当客户端移动到新页面时,$_GET将被销毁.如果需要保留它们,则必须先将它们存储到$_SESSION中,然后再调用重定向.

session_start();
$_SESSION['last_post'] = $_POST;
header("Location: http://example.com");
exit();

// On the redirected page,use the stored POST values and unset them in $_SESSION
session_start();
if (empty($_POST) && isset($_SESSION['last_post'])) {
  $post = $_SESSION['last_post'];
  unset($_SESSION['last_post']);
}
else $post = $_POST;

猜你在找的HTML相关文章