猿问

如何让 PHP 将文本框与表单中的相应复选框相匹配

基本上,我在一个数据库中有大约 700 个客户,我将它们显示在一个带有循环的页面中,循环遍历所有 700 个客户。此循环在每个客户旁边添加一个复选框,因此您可以选择要在接下来的几天计划中访问其中的哪一个,平均而言,这将是大约 30 个客户。


这是我的表格:


<table>

<tr>

    <td class="search_result_fullname"><?php echo $row['fullname']; ?></td>

    <td class="search_result_price">&pound;<input type="text" name="price[]" value="<?php echo $price; ?>" class="schedule_price"></td>

    <td class="search_result_phone"><a href="tel:<?php echo $phone; ?>"><?php echo $phone; ?></a></td>

    <td class="search_result_checkbox"><input type="checkbox" name="customerid[]" value="<?php echo $row['id']; ?>"></td>

</tr>

<tr>

    <td colspan="5"><input type="text" name="remarks[]" placeholder="Remarks" class="remarks"></td>

</tr>

</table>

提交此表单后,它会重新加载页面,并且我已经if(isset($_POST['add'])){就位。我已经尝试了各种不同的循环,但我一生都无法弄清楚如何去做。


因此,该表单正在提交一组仅选中的复选框。如果我打电话print_r($_POST['customerid']);验证它表明这是按预期工作的。然后,如果我选择 customer 50and 51,那么它应该返回一个只有这两个的数组。


现在的问题是,我还想为每个客户(50和51)获取正确的价格值,但是 for 数组$_POST['price']正在提交所有 700 个客户的价格。我如何获得与我检查过的正确客户相对应的价格?


非常感谢任何支持。


蓝山帝景
浏览 158回答 1
1回答

精慕HU

您可以将price数组设置为按客户 ID 进行索引:<input type="text" name="price[<?=$row['id']?>]" value="<?=$price?>" class="schedule_price">...然后按客户 ID 参考价格:$customerIds = $_POST['customerid'];$prices = $_POST['price'];foreach ($customerIds as $customerId) {&nbsp; $price = $prices[$customerId];}
随时随地看视频慕课网APP
我要回答