我在3个手风琴中有3个不同的形式,但查询是一个。if (!empty($_POST)
这个查询,然后提交表单。但它显示了其他表单的错误,联机等等等等都是错误。它显示了空字段的此错误。
有没有办法为空字段隐藏此错误消息?
if(!empty($_POST)){
$sql = "
INSERT INTO
leave_req
(
`lvm_type`,
`lvm_do`,
`lvm_db`,
`lvm_td`,
`lvc_type`,
`lvc_do`,
`lvc_db`,
`lvc_td`,
`lvo_type`,
`lvo_do`,
`lvo_db`,
`lvo_td`,
`lvn_type`,
`lvn_do`,
`lvn_db`,
`lvn_td`,
`lv_reason`,
`lv_usign`,
`lv_rsign`,
`lv_asign`,
`lv_sec`,
`lv_ip`,
`lv_cdate`
)
values
(
'".addData($_POST['altype'])."',
'".addData($_POST['aleave1'])."',
'".addData($_POST['aleave2'])."',
'".addData($_POST['altotal'])."',
'".addData($_POST['cltype'])."',
'".addData($_POST['cleave1'])."',
'".addData($_POST['cleave2'])."',
'".addData($_POST['cltotal'])."',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'".$ip."',
now()
)";
echo "message submitted successfully";
} else {
echo "check your form"; }
解决这个问题的一个好方法是将isset()与三元运算符结合使用。基本上,您的三元运算符将计算为给定值之一,即适当的$_POST
字段或null
。如果有一个设置的$_POST
字段,它将成为查询的一部分,如果没有,则将使用null
。
<?php
if(!empty($_POST)){
$sql = "
INSERT INTO
leave_req
(
`lvm_type`,
`lvm_do`,
`lvm_db`,
`lvm_td`,
`lvc_type`,
`lvc_do`,
`lvc_db`,
`lvc_td`,
`lvo_type`,
`lvo_do`,
`lvo_db`,
`lvo_td`,
`lvn_type`,
`lvn_do`,
`lvn_db`,
`lvn_td`,
`lv_reason`,
`lv_usign`,
`lv_rsign`,
`lv_asign`,
`lv_sec`,
`lv_ip`,
`lv_cdate`
)
values
(
'" . (isset($_POST['altype']) ? addData($_POST['altype']) : 'null') . "',
'" . (isset($_POST['aleave1']) ? addData($_POST['aleave1']) : 'null') . "',
'" . (isset($_POST['aleave2']) ? addData($_POST['aleave2']) : 'null') . "',
'" . (isset($_POST['altotal']) ? addData($_POST['altotal']) : 'null') . "',
'" . (isset($_POST['cltype']) ? addData($_POST['cltype']) : 'null') . "',
'" . (isset($_POST['cleave1']) ? addData($_POST['cleave1']) : 'null') . "',
'" . (isset($_POST['cleave2']) ? addData($_POST['cleave2']) : 'null') . "',
'" . (isset($_POST['cltotal']) ? addData($_POST['cltotal']) : 'null') . "',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'null',
'".$ip."',
now()
)";
echo "message submitted successfully";
} else {
echo "check your form"; }
?>
尝试这个
if (isset($_POST['form1']) or
isset($_POST['form2']) or
isset($_POST['form3']) )
{
...
}