Php 停止输入以发送空值

Php 停止输入以发送空值,php,Php,我得到了一个表,它使用来自数据库的请求数据填充它的行 第一个单元格是一个复选框,该复选框的值为请求ID,名称为数组,最后一个单元格是一个输入文本字段,名称也为数组 程序所做的是将选中的值发送到一个正在处理的php文件,该文件更改选中请求的状态,并使用我从输入文本字段发送的金额更新其金额 只有当我连续检查请求时,它才能正常工作。如果我不检查,文本会在数组中发送一个空位置,我会将其更新为一个空值 我知道这是因为如果选中了,则复选框只发送其值,而文本仍然发送它 我的问题是如何让文本字段只发送它的值如果

我得到了一个表,它使用来自数据库的请求数据填充它的行

第一个单元格是一个
复选框
,该复选框的值为请求ID,名称为数组,最后一个单元格是一个输入文本字段,名称也为数组

程序所做的是将选中的值发送到一个正在处理的php文件,该文件更改选中请求的状态,并使用我从输入文本字段发送的金额更新其金额

只有当我连续检查请求时,它才能正常工作。如果我不检查,文本会在数组中发送一个空位置,我会将其更新为一个空值

我知道这是因为如果选中了,则复选框只发送其值,而文本仍然发送它


我的问题是如何让文本字段只发送它的值如果该行的检查被选中,我自己或在google中似乎找不到答案,所以请有人告诉我这个问题的解决方案吗?

您可以做的是在所有文本字段中使用ID作为数组索引:

echo "<tr><td><input type='checkbox' name='check[]' value='$id'></td>
          ...
          <td><input type='text' name='value[$id]'></td></tr>";

它仍将发送所有其他文本字段,但此输入处理循环将忽略它们,因为只有复选框将位于
$\u POST['check']

处理文件只是对我发送的数组值进行内爆,并对每个选中的值进行更新。您可以始终验证信息服务器端并跳过空值。根据复选框的状态,实际上没有任何东西可以阻止文本输入提交。你是对的,我正在寻找一种方法,在我可以做到的时候阻止它发送。要记住对一个问题想出多种解决方案,谢谢,伙计。
foreach($_POST['check'] as $id) {
    $value = $_POST['value'][$id];
    ...
}