验证失败后,使用PHP在原始页面中设置变量?

时间:2011-02-20 21:20:50

标签: php validation variables

我有一个使用PHP进行服务器端验证的表单。表单的操作具有所有验证规则,如果存在任何验证问题,则数组$validation包含所有错误。如果数组具有大小(即存在验证问题),则脚本将返回到原始页面。唯一的问题是 - 我不知道如何在这个方向上携带变量。显然,我可以从原点到帖子页面$ _POST它们,但我不能反过来。

我该怎么做?

1 个答案:

答案 0 :(得分:2)

您可以将错误消息存储在会话中,然后该会话将出现在所有后续页面加载中。如果用户打开了多个表单副本,提交副本A将从副本B中获取错误,反之亦然。

另一个选项是让服务器端处理重新显示表单,如果有任何错误:

<?php

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
   ... validate form ...
   if ($form_has_errors) {
      redisplay_form();
   } else {
      ... do whatever has to be done with a 'good' submission ...
   }
}
?>