フォームには様々なパーツが存在します。<input type=”text”> や <input type=”email”> といった1行の入力欄だけでなく、複数行の入力欄であるテキストエリア、ユーザーに選択肢を提供するラジオボタンやチェックボックスなどです。これら様々なフォームパーツを通じて入力された値をPHPで扱う場合、フォームパーツのname属性の値と、$_POSTのキー名を一致させることが基本ルールとなります。
ここでは、ラジオボタンとselect/optionタグで構成されるドロップダウンリストの利用方法を紹介していきます。
ラジオボタン
ラジオボタンを作成する際は、必ずvalue属性を設定します。このvalue属性に設定した値がパラメータとして送信されることになるからです。value属性を設定しない場合、何を選択しても、valueの初期値である「on」という文字列が送信されることになってしまいます。
<input type="radio" name="coupon" value="1">クーポンを使用する
<input type="radio" name="coupon" value="2">クーポンを使用しない
このラジオボタンから、選択されたものを取得する際のPHPは以下のようになります。
$choice = $_POST["coupon"];
echo $choice; // 1または2が表示される
ドロップダウンリスト
select/optionタグで構成されるドロップダウンリストの場合、selectタグにname属性を設定し、optionタグにはvalue属性を設定します。value属性が設定されていない場合、optionタグで囲まれている文字列が値として送信されます。
<select name="address">
<option value="1">東京</option>
<option value="2">千葉</option>
<option value="3">埼玉</option>
</select>
このドロップダウンリストから、選択されたものを取得する際のPHPは以下のようになります。
$choice = $_POST["address"];
echo $choice; // 1,2,3のいずれかが表示される