私はPHPを学んでおり、1ページにフォームがあります。送信ボタン($_GET
を使用)を押すと、残りのフォームとともに新しいページに移動します。選択ボックスにPHPを埋め込む
私は大人の数を選択ボックスに入れています。
どのようにすれば$_GET
の値を選択して選択オプションに入れることができますか?
私はPHPを学んでおり、1ページにフォームがあります。送信ボタン($_GET
を使用)を押すと、残りのフォームとともに新しいページに移動します。選択ボックスにPHPを埋め込む
私は大人の数を選択ボックスに入れています。
どのようにすれば$_GET
の値を選択して選択オプションに入れることができますか?
ここに、自己に投稿するフォームの例を示します。
オプションリストを作成する際に、ユーザーが指定した値と一致するかどうかをチェックします。一致する場合は、「selected」属性を追加します。
<?php
$options = array('3', '4', '5');
$adults = null;
$error = null;
if($_SERVER['REQUEST_METHOD'] == 'POST') {
$adults = isset($_POST['adults']) ? $_POST['adults'] : null;
// Check the user supplied valid number.
if(in_array($adults, $options)) {
echo 'Valid post.';
// Your processing.
} else {
$error = 'Invalid option for adult.';
}
}
?>
<html>
<head><title>Select list form</title></head>
<body>
<?php if($error) echo $error; ?>
<form method="POST">
Number of adults:<br />
<select name="adults">
<?php foreach($options as $number) { ?>
<option value="<?php echo $number; ?>"
<?php echo $number == $adults ? 'selected' : ''; ?>
>
<?php echo $number; ?>
</option>
<?php } ?>
</select>
<input type="submit" value="submit" >
</form>
</body>
</html>
値を取得して配列に格納した後、ループを作成して選択項目のオプションを作成します。 symfonyのようなフレームワークを使用している場合は、もっときれいにすることができます。
フォームが送信されると、$ _GET ['変数名']によって送信された値を取得できます。あなたが提出した金額は$ iが等しい場合、これは(例えば1から10まで)をチェックします。この
<select name="x">
<?php
$adult_number = $_GET['adult_number'];
for($i=0; $i<10; $i+=1)
{
$selected = ($adult_number == $i ? 'selected' : '');
echo '<option value="'.$i.'" '.$selected.' />';
}
?>
のように選択していないか確認し、それならば可能adult_numberあなたの選択は名前である場合
選択肢のこのオプションを選択します。
最初のページからフォームを表示し、2番目のページで「選択」のhtmlコードを表示してください。 – vaso123
これまでに何を試しましたか?あなたが期待どおりに動作しなかったポストコード。 –