-3

「名」と「姓」の 2 つのフォーム フィールドがあります。2 つのフィールドを複製して、1 回の送信でさらにユーザーを追加することもできます。データベースに挿入されると、各レコードに独自の ID が必要です。ただし、ループで一度に2つの値を挿入するようには見えません。

私のフォームフィールドは

 <input type="text" name="firstname_0" size="35" value="" />
 <input type="text" name="lastname_0" size="35" value="" />

名前は、別のユーザー firstname_1、lastname_1 などを追加するたびに自動インクリメントされます...

1 回のフォーム送信で 1 人または無制限のユーザーを追加したいと考えています。

どんな助けでも大歓迎です。

foreach() と while を使用してみましたが、概念がわかりません。

4

4 に答える 4

0
<input type="text" name="user[][firstname]" size="35" value="" />
<input type="text" name="user[][lastname]" size="35" value="" />

このように入力を使用します。

print_r($ _ POST ['user']);より 何が起こったのかがわかります。

于 2012-05-19T22:22:28.753 に答える
0
<input type="text" name="firstname[]" size="35" value="Waqar" />
<input type="text" name="lastname[]" size="35" value="Alamgir" />


<input type="text" name="firstname[]" size="35" value="Natasha" />
<input type="text" name="lastname[]" size="35" value="Milla" />
于 2012-05-19T22:24:21.257 に答える
0

入力の名前属性で配列を使用します。

<input type="text" name="users[0]['firstname']" size="35" value="" />
<input type="text" name="users[0]['lastname']" size="35" value="" />

<input type="text" name="users[1]['firstname']" size="35" value="" />
<input type="text" name="users[1]['lastname']" size="35" value="" />

その後:

foreach ($_POST['users'] as $user) {
}
于 2012-05-19T22:07:47.247 に答える
0

入力フィールドを配列に変更することをお勧めします

<input type="text" name="firstname[0]" size="35" value="" />
<input type="text" name="lastname[0]" size="35" value="" />

そして、入力を追加し続けてキーを増やします

<input type="text" name="firstname[1]" size="35" value="" />
<input type="text" name="lastname[1]" size="35" value="" />
......
<input type="text" name="firstname[2]" size="35" value="" />
<input type="text" name="lastname[2]" size="35" value="" />

次に、PHP でデータを簡単に処理できます。

$firstName = $_POST['firstname'];
$lastName  = $_POST['lastname'];
.... do some checks ....

foreach ($firstName as $key => $name)
{
     insert_to_db($name, $lastName[$key]);
}
于 2012-05-19T22:12:14.017 に答える