[英]php generate a select box having dropdown years of -5 years and +5 years
[英]Select box: how to populate years php
我想在生日字段中填充php中的選擇框多年。 從查詢中設置變量$ year,並且必須在我的選擇框中選擇特定年份。 到目前為止的代碼就是這個,它只填充了幾年,但它沒有選擇存儲在mysql db中的年份,有誰知道為什么? 謝謝
$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>
試試這個:
$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>
主要問題是您沒有使用雙引號關閉value
,因此包含了'selected="selected"
。 所以你得到了這個:
<option value=1990selected="selected">1990</option>
此外,您沒有在<select
之前關閉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>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.