0

投稿するテキスト ボックスの値があります。PHP配列でそれを取得するにはどうすればよいですか。htmlは次のとおりです。

<input type="text" name="ItemName[1][2]" >
<input type="text" name="ItemName[1][3]" >
<input type="text" name="ItemName[1][4]" >

$ItemNamesArray = $_POST[] ..... ????? What do I do in this step???

助けてください。

4

4 に答える 4

2

を使用するvar_dump($_POST)と、すぐに答えが表示されます。

array(1) {
  ["ItemName"]=>
  array(1) {
    [1]=>
    array(3) {
      [2]=>
      string(1) "a"
      [3]=>
      string(1) "b"
      [4]=>
      string(1) "c"
    }
  }
}

たとえば、アクセス$_POST['ItemName'][1][2]します。

于 2012-04-23T11:32:53.943 に答える
0
$_POST['ItemName'][1][2];
$_POST['ItemName'][1][3];
$_POST['ItemName'][1][4];
于 2012-04-23T11:32:27.097 に答える
0

post配列には、$ ItemNamesArray = $_POST['ItemName']のようにアクセスできます。

そしてあなたは最初のアイテムにアクセスすることができます$ItemNamesArray[1][2]

于 2012-04-23T11:33:11.527 に答える
0

さて、あなたの例では:

<input type="text" name="ItemName[1][2]" >
<input type="text" name="ItemName[1][3]" >
<input type="text" name="ItemName[1][4]" >

キーは名前$_POSTになるのでItemName、PHP はフォローアップ ブラケットを配列キーとして扱うため、値は次のようになります。

$_POST['ItemName'][1][2]
$_POST['ItemName'][1][3]
$_POST['ItemName'][1][4]

したがって、すべてのアイテム名が必要な場合は、次のようにします。

$itemNames = $_POST['ItemName'];

ご参考までに、

  1. 使用する前に、すべての入力をサニタイズして検証する必要があります。

  2. ItemName[2][1]実際にorなどを持っていない場合はItemName[0][1]、次のほうが理にかなっています。

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

これは、インデックスを事前に設定するのではなく、入ってきたときにインデックスを設定するだけです。

于 2012-04-23T11:37:01.150 に答える