2015-07-20 82 views
1

我有一個問題,我的克隆形式:HTML表單輸入數組PHP

形式有4個輸入,我需要獨立的變量,把它們放在一起的人。

我輸入:

<input type="text" name="fName[]"> 
<input type="text" name="lName[]"> 
<input type="number" name="age[]"> 
<input type="text" name="city[]"> 

我的PHP:

$fNameArray = $_POST['fName']; 
$lNameArray = $_POST['lName']; 
$ageArray = $_POST['age']; 
$cityArray = $_POST['city']; 

我真不明白數組如何二維上班,一羣人來完成的形式,如下面的例子:

名:siddharta,姓氏:naranjo,年齡:29,城市:墨西哥
名字:xxxxx,姓氏:xxxxxx,年齡:xx,城市:xxxx。

回答

0

這些答案有些是錯的,如果我理解你。 首先,如果您使用命名約定data[]fname那麼它不會確定分組?

其次,空白支架將不斷移動到一個新的陣列。 你最終會得到一個有一個元素的數組。

您將需要對陣列進行編號或標識以將它們保持在一起。

<?php 
    if(isset($_POST['data'])){ 
     $results = $_POST['data']; 
     echo "<pre>"; 
     print_r($results); 
     echo "<pre>"; 
    } 
?> 


<form action="" method="post"> 
    <!-- User 1 --> 
    <input type="text" name="data[0][fName]" value="test 1"> 
    <input type="text" name="data[0][lName]" value="test 1"> 
    <input type="number" name="data[0][age]" value="21"> 
    <input type="text" name="data[0][city]" value="test 1"> 

    <br> 

    <!-- User 2 --> 
    <input type="text" name="data[1][fName]" value="test 2"> 
    <input type="text" name="data[1][lName]" value="test 2"> 
    <input type="number" name="data[1][age]" value="22"> 
    <input type="text" name="data[1][city]" value="test 2"> 

    <br> 

    <!-- User 3 --> 
    <input type="text" name="data[2][fName]" value="test 3"> 
    <input type="text" name="data[2][lName]" value="test 3"> 
    <input type="number" name="data[2][age]" value="23"> 
    <input type="text" name="data[2][city]" value="test 3"> 

    <br> 

    <input type="submit" value="Go"> 
</form> 

這會產生這樣的:

Array 
(
    [0] => Array 
     (
      [fName] => test 1 
      [lName] => test 1 
      [age] => 21 
      [city] => test 1 
     ) 

    [1] => Array 
     (
      [fName] => test 2 
      [lName] => test 2 
      [age] => 22 
      [city] => test 2 
     ) 

    [2] => Array 
     (
      [fName] => test 3 
      [lName] => test 3 
      [age] => 23 
      [city] => test 3 
     ) 

) 

這是什麼樣子,你想要什麼?

-2

使用2維數組的鍵。

<input type="text" name="fName[0]"> 
<input type="text" name="lName[0]"> 
<input type="number" name="age[0]"> 
<input type="text" name="city[0]"> 

<input type="text" name="fName[1]"> 
<input type="text" name="lName[1]"> 
<input type="number" name="age[1]"> 
<input type="text" name="city[1]"> 
0

你的HTML是確定

如果我理解你的權利來看看這個

<?php 
    if($_POST && isset($_POST['fName'])) { 
     $people = count($_POST['fName']); 
     for($i=0; $i<$people; $i++) { 
      echo "<p>first name: {$_POST['fName'][$i]}, last name: {$_POST['lName'][$i]} ...</p>"; 
     } 
    }