为了账号安全,请及时绑定邮箱和手机立即绑定

PHP 数组验证

PHP 数组验证

PHP
斯蒂芬大帝 2022-10-22 15:09:28
我有一个在提交时得到验证的表单。我确保某些字段不为空,日期字段具有有效格式等。我有一个复选框块,旁边有一个文本输入。Option 1<input type="checkbox" name="jobBonusId[]" value="1"  />Option 2<input type="checkbox" name="jobBonusId[]" value="2"  />Option 3<input type="checkbox" name="jobBonusId[]" value="3"  />Amount 1<input type="number" name="jobBonusAmount[]" step="0.01" value="0.00" />Amount 2<input type="number" name="jobBonusAmount[]" step="0.01" value="0.00" />Amount 3<input type="number" name="jobBonusAmount[]" step="0.01" value="0.00" />因此,如果选中任何 jobBonusId[] 复选框,它就会创建一个数组。现在,我想验证 jobBonusAmount[] 是否选中了它的 -parent- 复选框,并确保它不为空或不等于 0.00。到目前为止,我有以下代码:// Run the scriptif (isset($_POST['addJobRecord']) && $_POST['addJobRecord']=='oTzm50xfm') {   // Validate date format   if (!validateDate($jobDateStart) || !empty($jobDateEnd) && !validateDate($jobDateEnd)) {      // Show the form      $displayContent = $displayForm;   // Validate data dates   } else if ($jobTimeIn>$jobTimeOut) {      // Show the form      $displayContent = $displayForm;   // Validate bonus values   } else if (!empty($jobBonusId) && is_array($jobBonusId)) {      // At least one jobBonusId checkbox was checked      // Make sure its child input is not empty      ... HERE'S WHERE I'M STUCK ...   } else {      // Everything looks good      // Add record to database   }}任何想法如何实现它?
查看完整描述

1 回答

?
慕妹3146593

TA贡献1820条经验 获得超9个赞

您可以使用数组键,并通过键检查孩子jobBonusId:


foreach ($jobBonusId as $key => $bonusId) {

    if (!empty($bonusId)) {

        if (!empty($jobBonusAmount[$key])) { // check a child

            // if child is filled

        } else {

            // not filled

        }

    }

}

这意味着,该$jobBonusId数组与$jobBonusAmount数组相同


查看完整回答
反对 回复 2022-10-22
  • 1 回答
  • 0 关注
  • 171 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号