Php 我在提交表格时不断出错。页面起作用,但消息无效

Php 我在提交表格时不断出错。页面起作用,但消息无效,php,Php,完全新手 我有一个有7个输入的表单,如果我只填写1或2,我会得到一个错误非数值,因为我没有填写所有7个输入?如何删除错误 我的代码 if(isset($_POST["invoiceitem1price"])){$invoiceitem1price =($_POST["invoiceitem1price"]);} if(isset($_POST["invoiceitem2price"])){$invoiceitem2price =($_POST["invoiceitem2price"]);} if

完全新手

我有一个有7个输入的表单,如果我只填写1或2,我会得到一个错误非数值,因为我没有填写所有7个输入?如何删除错误

我的代码

if(isset($_POST["invoiceitem1price"])){$invoiceitem1price =($_POST["invoiceitem1price"]);}
if(isset($_POST["invoiceitem2price"])){$invoiceitem2price =($_POST["invoiceitem2price"]);}
if(isset($_POST["invoiceitem3price"])){$invoiceitem3price =($_POST["invoiceitem3price"]);}
if(isset($_POST["invoiceitem4price"])){$invoiceitem4price =($_POST["invoiceitem4price"]);}
if(isset($_POST["invoiceitem5price"])){$invoiceitem5price =($_POST["invoiceitem5price"]);}
if(isset($_POST["invoiceitem6price"])){$invoiceitem6price =($_POST["invoiceitem6price"]);}
if(isset($_POST["invoiceitem7price"])){$invoiceitem7price =($_POST["invoiceitem7price"]);}

$sum1=$invoiceitem1price;
$sum2=$invoiceitem2price;
$sum3=$invoiceitem3price;
$sum4=$invoiceitem4price;
$sum5=$invoiceitem5price;
$sum6=$invoiceitem6price;
$sum7=$invoiceitem7price;

if($sum1!=0){$sum1 = number_format($sum1, 2, '.', '');}else{$sum1 = "";}

if($sum2!=0){$sum2 = number_format($sum2, 2, '.', '');}else{$sum2 = "";}

if($sum3!=0){$sum3 = number_format($sum3, 2, '.', '');}else{$sum3 = "";}

if($sum4!=0){$sum4 = number_format($sum4, 2, '.', '');}else{$sum4 = "";}

if($sum5!=0){$sum5 = number_format($sum5, 2, '.', '');}else{$sum5 = "";}

if($sum6!=0){$sum6 = number_format($sum6, 2, '.', '');}else{$sum6 = "";}

if($sum7!=0){$sum7 = number_format($sum7, 2, '.', '');}else{$sum7 = "";}

$total = number_format($total, 2, ".", "");

$total=$sum1+$sum2+$sum3+$sum4+$sum5+$sum6+$sum7;

正如B001在他的用户名后加了一个很酷的符号,你的方法很奇怪

您显然已经做出了努力:帮助……

将输入名称更改为
name=“invoiceitem[]”
,提交时该名称将成为一个数组

然后读取表单数据:

if(isset($_POST['invoiceitem'])){ //check that form was submitted
    $total = 0;
    foreach($_POST['invoiceitem'] as $price){ //loop each field
        $total += (float) $price; //add value to total
    }
    $total = number_format($total, 2, ".", ""); //format total
}

而不是
else{$sum1=“”;}
do
else{$sum1=0;}
为每个变量。然而,你的方法似乎真的很奇怪。只是出于兴趣-你想开发一个网上商店吗?不,哈哈,我只是一个完全的新手,正在做一个创建发票项目的练习谢谢你的建议,我只是一个初学者,将编码作为一种爱好,它只是一个示例发票项目