Php 在表单提交并重定向到页面后获取表单值

Php 在表单提交并重定向到页面后获取表单值,php,html,Php,Html,我正在为我的表单使用POST方法。如果我的表格被提交到页面,表格将被重新加载,因为设置了$\u POST['submit'],它将通过我的验证处理我的表格 如果由于某种原因输入无效(缺少必填字段、错误的密码要求等)。会话对象存储消息,并重定向到表单所在的页面 由于此重定向,我的$\u POST值消失。我应该在会话对象中存储所有的$\u POST值,还是有更方便的方法跟踪用户提交的字段?通过让表单提交到自身,或者至少在处理页面上包含表单,可以避免这种陷阱。这很好,因为 if isset($_POS

我正在为我的表单使用POST方法。如果我的表格被提交到页面,表格将被重新加载,因为设置了
$\u POST['submit']
,它将通过我的验证处理我的表格

如果由于某种原因输入无效(缺少必填字段、错误的密码要求等)。会话对象存储消息,并重定向到表单所在的页面


由于此重定向,我的
$\u POST
值消失。我应该在会话对象中存储所有的
$\u POST
值,还是有更方便的方法跟踪用户提交的字段?

通过让表单提交到自身,或者至少在处理页面上包含表单,可以避免这种陷阱。这很好,因为

if isset($_POST['submit']) {
    // do your validation
    if ($valid) {
        // show success, redirect elsewhere, etc 
    } else {
        // include the form, using the supplied $_POST values
        // use the validation flags you raised to display form errors
    }


} else {   // if no $_POST values exist
    // initialize $_POST values 
    // include the form
}

在提交帖子之前,你能在前端/后端进行验证吗?使用FE框架,比如,它不会让表单在没有正确值的情况下提交,然后确保在重定向之前进行后端验证?这看起来不错,但我不喜欢使用这样的插件,因为它添加了很多你不想使用的东西。嗯,我一直在想这个问题,并尝试了一下,但我在某个地方出了点差错。此选项是否优于将值存储在会话中?Nijn是否确定“操作”属性指向处理页面的正确路径?处理页面与列出表单的页面相同。所以是的。@Nijn只在会话中存储您需要的内容,而表单变量通常是单一用途的,因此我建议您尝试上述方法并更正遇到的任何错误。