1

我正在构建(从基本教程)注册页面。输入包含这样的验证 -

if (isset($_POST['formsubmitted'])) {
$error = array();//Declare An Array to store any error message  
if (empty($_POST['name'])) {//if no name has been supplied 
    $error[] = 'Please Enter a name ';//add to array "error"
} else {
    $name = $_POST['name'];//else assign it a variable
}

问题是,在任何不正确的输入之后,表单会在显示错误消息时清除其数据。为了解决这个问题,我在表单输入中实现了以下内容 -

value='<?php echo $_POST['name']; ?>'

这意味着如果出现错误,这些字段会保留其数据。伟大的。问题是当表单成功提交后,它仍然保留了我真的不想要的数据。

是否有一种“简单”的方式,如果表单返回错误 - 数据仍然存在,如果表单提交成功 - 数据会清除?

4

1 回答 1

0

对于您的每个输入,请使用数组,例如:

<input name="customer[name]" type="text" value="<?php echo $customer['value'] || "" ?>"/>

如果没有错误,重置 $customer 数组:

    <?php if count($errors === 0) {
       $customer = NULL;
    }

那就是如果您不想隐藏表单...

于 2013-01-27T00:01:29.783 回答