-5

ユーザーが特定の値を持つ複数のチェックボックスを選択できるフォームを作成しようとしています。次に、サーバー側はユーザー入力を受け取り、カンマ区切りのリストで文をエコーし​​ます。

<input type="checkbox" name="apples" value="apples"/> 
<input type="checkbox" name="oranges" value="oranges"/>
<input type="checkbox" name="bananas" value="bananas"/>
<input type="checkbox" name="pears" value="pears"/>

出力は「I like to eat apples.」になります。または「リンゴとバナナを食べるのが好きです。」または「リンゴ、バナナ、ナシを食べるのが好きです。」ボックスが選択されていない場合は何も表示されません。

<?php $apples = (isset($_POST['apples']) ? $_POST['apples'] : ''); ?>
<?php $oranges = (isset($_POST['oranges']) ? $_POST['oranges'] : ''); ?>
<?php $bananas = (isset($_POST['bananas']) ? $_POST['bananas'] : ''); ?>
<?php $pears = (isset($_POST['pears']) ? $_POST['pears'] : ''); ?>

ありがとう!

4

2 に答える 2

1

チェックボックスに(配列として)同じ名前を使用します。

<input type="checkbox" name="fruit[]" value="apples"/> 
<input type="checkbox" name="fruit[]" value="oranges"/>
<input type="checkbox" name="fruit[]" value="bananas"/>
<input type="checkbox" name="fruit[]" value="pears"/>

そして、以下を使用します。

$fruit = $_POST['fruit'];

if (!isset($fruit[2]))
{
  echo implode(' and ', $fruit);
}

else
{

  array_push($fruit, 'and ' . array_pop($fruit));

  echo implode(', ', $fruit);

}
于 2013-04-01T15:47:00.900 に答える