停止输入发送空值

时间:2014-12-08 21:27:08

标签: php

我有一个表,它使用来自数据库的请求数据填充其行。

第一个单元格是checkbox,其中请求的ID为值,其名称为数组,最后一个是输入文本字段,其名称也为数组。

程序的作用是将检查的值发送到处理php文件,该文件更改已检查请求的状态,并使用我从输入文本字段发送的数量更新它的数量。

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

我知道这是因为检查只发送它的值,如果它被检查并且文本仍然发送它。

我的问题是,如果检查来自该行的支票,我如何使文本字段仅发送它的值,我似乎无法通过自己或谷歌找到答案,所以请有人指出我的解决方案这个问题?

1 个答案:

答案 0 :(得分:1)

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

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

然后,当您处理输入时,您可以执行以下操作:

foreach($_POST['check'] as $id) {
    $value = $_POST['value'][$id];
    ...
}

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