如何防止企业在html中提交表单清空输入?
How to prevent forms from emptying inputs by submiting the form in html?
我正在使用 php 和 html 编写表格。
此表单具有验证控件。
当我提交表单时,所有文本框都会变空,如果用户填写了例如 5 个输入中的 3 个,因为如果这两个输入 he/she 现在必须再次填写这 3 个输入。
如何通过提交表单来防止表单清空输入?
我想到了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
效果很好,当用户让该字段为空时,它会说:"Name must be filled out"。在您填写之前,提交不会执行任何操作...
//抱歉英语不好
如果您的验证脚本和表单代码在同一个文件中,您只需将 $_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>
评论 RiggsFolly 后编辑。
检查是否在 $_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>
我正在使用 php 和 html 编写表格。 此表单具有验证控件。 当我提交表单时,所有文本框都会变空,如果用户填写了例如 5 个输入中的 3 个,因为如果这两个输入 he/she 现在必须再次填写这 3 个输入。 如何通过提交表单来防止表单清空输入?
我想到了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
效果很好,当用户让该字段为空时,它会说:"Name must be filled out"。在您填写之前,提交不会执行任何操作...
//抱歉英语不好
如果您的验证脚本和表单代码在同一个文件中,您只需将 $_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>
评论 RiggsFolly 后编辑。
检查是否在 $_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>