2012-02-21 13 views
4

私は、誕生日のフィールドで何年もphpの選択ボックスを設定しようとしています。変数$ yearはクエリから設定され、その特定の年を選択ボックスで選択する必要があります。これまでのコードはこれですが、それは年に値を設定しますが、mysql dbに格納されている年を選択しません。誰にも分かりますか?主な問題は、あなたが二重引用符でvalueを閉じていなかったので、'selected="selected"が含まれていたた選択ボックス:年を設定する方法php

$year = (int)$row['year']; // this comes from a query that is stored in the db 
?> 
<select name="year"><?php 
    for ($x = 1920; $x < date('Y'); $x++) { 
?><option value="<?php echo $x . '"'; if ($x == $year) { echo ' selected="selected"';}?>><?php echo $x; ?></option><? 
}?> 
</select> 

:ありがとう

$year = $row['year']; // this comes from a query that is stored in the db 
<select name="year"><? 
    for ($x = 1920; $x < date('Y'); $x++) { 
    ?><option value=<? echo $x; if ($x == $year) {echo 'selected="selected"';}?>><? echo $x;?></option><? 
}?> 
</select> 
+0

あなたはそれはあなたが – bumperbox

答えて

7

はこれを試してみてください。

<option value=1990selected="selected">1990</option> 

また、あなたがタグ値と選択されたラベルの間のギャップを残していませんでしたように見えます<select

+1

は、あなたが言ったと同じように素晴らしい仕事を私はタグを閉じなかった期待値を持っていることを証明するために($年)のvar_dumpことができます。ありがとうございます – chenci

+0

あなたは大歓迎です –

0

前に、PHPタグを閉じなかった:あなたはこれが得ました。

<option value=<? echo $x; if ($x == $year) {echo 'selected="selected"';}?>><? echo $x;?></option> 

:これを変更してみてください

<option value="<? echo $x; ?>" <? if ($x == $year) {echo 'selected="selected"';}?>><? echo $x;?></option> 
関連する問題