如果用户向后移动,则需要预先填充跨多个页面的Php表单

如果用户向后移动,则需要预先填充跨多个页面的Php表单,php,session,forms,Php,Session,Forms,情况如下: 我有一张三页纸的表格。(A页、B页、C页)。 用户从A开始填写表格,点击进入B页的按钮 foreach($_POST as $key => $val){ $_SESSION[$key] = $val; } 我使用上面的命令将表单结果发送到会话。现在用户可以填写B页并单击进入C页或单击“返回”到A页。如果用户返回A页,我希望填充所有字段 $Email = $_GET['preview'] ? $_SESSION['Emai

情况如下: 我有一张三页纸的表格。(A页、B页、C页)。 用户从A开始填写表格,点击进入B页的按钮

    foreach($_POST as $key => $val){
    $_SESSION[$key]  = $val;
    }   
我使用上面的命令将表单结果发送到会话。现在用户可以填写B页并单击进入C页或单击“返回”到A页。如果用户返回A页,我希望填充所有字段

            $Email = $_GET['preview'] ? $_SESSION['Email'] : $_POST['Email'];
我在上面列出了其中几个,以预填充表单

好的,问题出在这里。如果用户转到A-->B-->C,然后想返回B,我将丢失A的所有会话变量。很明显,用户会返回到一个没有数据的字段


任何帮助都会很好

在发布后执行重定向,这样brouwser就不会重新发布

if($_SERVER['REQUEST_METHOD'] == 'POST') {
  header('Location: '.$_SERVER['REQUEST_URI']);
}
这就停止了在浏览历史记录时重新发送post数据(页面过期)的问题