如何通过在html中提交表单来防止表单清空输入


How to prevent forms from emptying inputs by submiting the form in html?

我正在使用php和html编写一个表单。此表单具有验证控制。当我提交表单时,所有的文本框都是空的,如果用户已经填写了例如5个输入中的3个,因为如果这两个输入,他/她现在必须再次填写这3个输入。如何通过提交表单来防止表单清空输入?

如果验证脚本和表单代码在同一个文件中,则可以将$_POST值放入表单中。

<?php
$field1 = '';
$field2 = '';
...
$field5 = '';
if($_SERVER['REQUEST_METHOD']=="POST"){
    $field1 = $_POST['field1'];
    $field2 = $_POST['field2'];
    ...
    $field5 = $_POST['field5'];
    if(validation is true){
     //do something
    }
}
    ?>
    <form method="post">
       <input type="text" name="field1" value="<?= $field1 ?>" >
       <input type="text" name="field2" value="<?= $field2 ?>" >
        ...
       <input type="text" name="field5" value="<?= $field5 ?>" >
       <input type="submit" value="submit" >
    </form>

评论后编辑RiggsFilly。

检查表单字段是否设置在$_REQUEST数组中,并相应地打印其值

<form method="post">
    <input type="text" name="field1" value="<?php echo (isset($_REQUEST["field1"])? $_REQUEST["field1"]:""?>" >
    <input type="text" name="field2" value="<?php echo (isset($_REQUEST["field2"])? $_REQUEST["field2"]:""?>" >
    ...
    <input type="text" name="field5" value="<?php echo (isset($_REQUEST["field5"])? $_REQUEST["field5"]:""?>" >
    <input type="submit" value="submit" >
</form>

我想到了javascript:

function validateForm() {
     var x = document.forms["myForm"]["fname"].value;
     if (x == null || x == "") {
         alert("Name must be filled out");
         return false;
     }
 }

您可以在以下网站上找到关于的全部信息:http://www.w3schools.com/js/js_validation.asp

它工作得很好,当用户让字段为空时,它会说:"必须填写名称"。在你填写之前,提交不会有任何作用。。。

//抱歉英语不好