1

フォーム外のボタンがクリックされたときにフォームに入力要素を追加するためのコーディングを行いました。

<?php
$i=0;
$maxid = isset($_POST['max_id'])?$_POST['max_id']+1:0;
print '<form action="search.php" method="post" ><input type="hidden" name="max_id" value="' . $maxid . '" /><input name="ad_field_button" type="submit" value="Add Field" /></form>';
print '<form action="results1.php" method="post" >';
print '<table border="0">';
for($i=0;$i<=$maxid;$i++)
   {
       // code for adding input elements;
   }
print '</table>';
print '<input name="ad_s_button" type="submit" value="Search" />';
print '</form></p>';
?>

ボタン ad_s_button がクリックされたときに送信されたフォームの入力要素の数を知りたいです。または、ad_s_button がクリックされたときに「max_id」値を次のページに渡すにはどうすればよいですか。助言がありますか?

4

4 に答える 4

2

どうですか:

print '<input type="hidden" name="Inputelements" value="'.$maxid.'">';

だからあなたはあなたが望む値を持つ隠しフィールドを持っています

于 2013-03-19T10:21:26.367 に答える
1

または、ad_s_button がクリックされたときに「max_id」値を次のページに渡すにはどうすればよいですか。

フォームで隠しフィールドを使用して、そこに max_id を保存できます。

<input type="hidden" name="max_id" value="<?php echo $maxid; ?>">
于 2013-03-19T10:22:18.073 に答える
0

$_POST提出されたすべての要素を含みます。

あなたの場合、 count($_POST)-1 は入力要素の数を示します。-1 ボタン (送信ボタン) があるため、$_POST にも存在します。

于 2013-03-19T10:21:39.540 に答える
0

配列を投稿することもできます。例えば:

<input type='text' name='request[name]' />
<input type='text' name='request[surname]' />
<input type='text' name='request[city]' />

そしてphp部分:

$request = $_POST['request'];
echo '<pre>'
echo var_dump($request);
echo '</pre>'

生産します

array(3){
  'name' => 'abc',
  'surname' => 'bcd',
  'city' => 'Somewhere'
}

次に、フォームデータを簡単に処理し、入力フィールドを簡単に数えることもできます。count($request);

于 2013-03-19T10:29:20.540 に答える