簡體   English   中英

選擇框:如何填充多年的php

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM