0

我可以像这样计算有多少 POST 提交为 Field_Amount_1、Field_Amount_2、Field_Amount_3 等...?

$Counting = count($_POST['Field_Amount_']);

感谢您的任何建议

4

2 回答 2

2

那么最简单的方法是更正您的表格,例如:

<input name="Field_Amount[]" type="text" />
<input name="Field_Amount[]" type="text" />
<input name="Field_Amount[]" type="text" />

这使它发布一个数组,因此$_POST将包含:

Array (
   'Field_Amount' => Array (
      0 => 'amount'
      1 => 'amount'
      2 => 'amount'
    )
)

然后你可以做count($_POST['Field_Amount'])

另一种方法是手动计算所有元素:

$keys = array_keys($_POST);
$counted = count(preg_grep('/^Field_Amount_\d+$/', $keys));

如果您还需要确保只跟踪非空字段,那么您可以提供一个空字符串作为第二个参数array_keys

$keys = array_keys($_POST, '');
$counted = count(preg_grep('/^Field_Amount_\d+$/', $keys));

如果您需要进行更多验证,则需要手动循环。

于 2013-04-22T15:03:05.897 回答
0
if($_POST['Submit']) {

    $count=0;

    foreach( $_POST as $post ) {
        if( strstr($post, "field_amount_")) {
            $count++;
        }
    }
    echo $count;
}
于 2013-04-22T15:25:28.840 回答