【发布时间】:2014-03-22 18:19:46
【问题描述】:
我在 PHP 中设置了一个带有验证功能的表单,效果很好。我面临的问题是一旦单击提交按钮就会发生验证。单击提交按钮时,表单值将被删除。如果出现验证错误,用户需要再次填写所有值,而不仅仅是错误一个。有没有一种方法,一旦单击提交按钮,表单值就不会被删除?
<tr>
<td><label for="email_address">Email Address:</label> <input type="text" name="email_address" id="email_address" required /></td>
</tr>
<tr>
<td><label for="password">Password:</label> <input type="password" size="25" maxlength="25" name="password" id="password" required /></td>
</tr>
<tr>
<td><label for="password2">Re-enter Password:</label> <input type="password" size="25" maxlength="25" name="password2" id="password2" required /></td>
</tr>
<tr>
<td><input type="submit" name="submit" value="Submit" /></td>
</tr>
<tr>
<?php
if(isset($_POST['submit'])){
$email_address = $_POST['email_address'];
$password = $_POST['password'];
$password2 = $_POST['password2'];
if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email_address)) {
?>
<td><?php echo "Enter Valid Email Address"; ?></td>
<?php
}
elseif ($password2 !== $password) {
?>
<td><?php echo "Passwords don't match"; ?></td>
<?php
}
【问题讨论】:
-
jquery 验证器是你的朋友...jqueryvalidation.org
-
@AbhikChakraborty 我们不能跳过客户端验证,并且 OP 希望在表单提交后预填充这些字段。我认为 jQuery Validator 没有回答 OP 的问题。
-
我知道它没有,所以我没有添加这个作为答案。这只是一条让生活变得简单的建议。