所以我有一个带有名为“vin []”的输入的html表单。输入是一个数组。这是因为我已经为用户提供了单击按钮的选项,并且在按钮单击时,我添加了名为“vin []”的输入的克隆。我这样做是因为我正在收集车辆的vin数量,用户需要选择包含多辆车辆。
所以我的问题是:在我的vin数字数组中,如何验证每个vin数字是否正好是17个字符?如果用户提供的所有vin都符合此标准,我只希望提交表单。
我知道我必须遍历我的数组,并告诉程序显示错误消息,如果任何一个vins不是17个字符,我想使用mail函数发送电子邮件,如果所有提供的vins是17个字符..这就是我到目前为止:
foreach ($_POST['vin']) as $vin_value ) {
if(strlen($vin_value) != 17) {
echo "VIN is not 17 digits";
echo "VIN is " . strlen($vin_value) . " digits";
echo "VIN value is: " . $vin_value;
} else {
mail($admin_email, "Auto Quote Request", $email_body);
echo "Thank you for contacting us!";
}
}
注意:与上述通知相反,此问题没有正确/相关的重复答案。这个问题的唯一正确答案就在这里。
答案 0 :(得分:1)
计算好多少:
$ok = 0;
foreach(...) {
if (strlen($vin_value) == 17) {
$ok++;
}
}
if ($ok == count($_POST['vin'])) {
... all of them are ok
}