0

以下のテストを実行し、20 個のテキスト ボックスのうち最初のテキスト ボックスにテキストを入力していますspec.php。ページ内の投稿値をエコーアウトして、さらに処理できるようにしています。私が試してみると、エコーは何もありません。私の質問は、すべての入力 'name' 属性が一意であるループを使用して入力要素コードを生成すると、渡されると予想される $_POST 変数がspec.phpエコーアウトしないのはなぜですか?

<form action="spec.php" method="post">
<?php
    for($i=0; $i < 20; $i++){
        echo '<input type="text" style="border:2px solid red;" name="inp'.$i.'" />';
    }

?>
<input type="submit">

spec.php

echo $_POST['inp0'];
4

2 に答える 2

0

あなたの最初のフィールドは$_POST['inp0']. あなたのループを見てください。それはゼロから始まります。

于 2012-12-12T20:41:45.947 に答える
-1

最初に $_POST を次のようにデバッグします。

print_r($_POST);

すべての入力がそこにあるかどうかを確認してください。

編集:私は以下を使用しましたが、うまくいきます!

 <form method="post" action="action.php">
 <?php
  for($i=0; $i < 20; $i++){
    echo '<input type="text" style="border:2px solid red;" name="inp'.$i.'" />';
  }
  ?>
 <input type="submit">

action.php

<?php print_r($_POST);

結果:

Array
(
[inp0] => one 
[inp1] => two
[inp2] => three
[inp3] => four 
[inp4] => five
[inp5] => six
[inp6] => seven
[inp7] => blah
[inp8] => blah
[inp9] => blah
[inp10] => blah
[inp11] => blah
[inp12] => 
[inp13] => 
[inp14] => 
[inp15] => 
[inp16] => 
[inp17] => 
[inp18] => 
[inp19] => 
)
于 2012-12-12T20:50:50.633 に答える