php基于数据库中的值创建月份下拉列表
我有一个月的下拉列表,php基于数据库中的值创建月份下拉列表,php,Php,我有一个月的下拉列表,#frm 下拉列表由以下代码填充 <?php $from_months = array(0 => 'January', 1 => 'February', 2 => 'March', 3 => 'April', 4 => 'May', 5 => 'June', 6 => 'July', 7 => 'August', 8 => 'September', 9 => 'October', 10 => 'No
#frm
下拉列表由以下代码填充
<?php
$from_months = array(0 => 'January', 1 => 'February', 2 => 'March', 3 => 'April', 4 => 'May', 5 => 'June', 6 => 'July', 7 => 'August', 8 => 'September', 9 => 'October', 10 => 'November', 11 => 'December');
$transposed = array_slice($from_months, date('n'), 12, true) + array_slice($from_months, 0, date('n'), true);
$last8 = array_reverse(array_slice($transposed, -8, 12, true), true);
?>
<select class="span4" name="frm" id="frm" required>
<?php
foreach ($from_months as $num => $name) {
printf('<option value="%u">%s</option>', $num, $name);
}
?>
你只需要调节你的循环
$value_from_database = 4;
foreach ($from_months as $num => $name)
if ($num >= $value_from_database)
printf('<option value="%u">%s</option>', $num, $name);
数据库中的$value\u=4;
foreach($num=>$name)
如果($num>=$value\u来自\u数据库)
printf('%s',$num,$name);
使用转置数组的逻辑,这样做相当简单
<?php
$db_val=6; // the value you get from your database
$from_months = array(0 => 'January', 1 => 'February', 2 => 'March', 3 => 'April', 4 => 'May', 5 => 'June', 6 => 'July', 7 => 'August', 8 => 'September', 9 => 'October', 10 => 'November', 11 => 'December');
$transposed = array_slice($from_months, $db_val, 12, true);
?>
<select class="span4" name="frm" id="frm" required>
<?php
foreach ($transposed as $num => $name) {
printf('<option value="%u">%s</option>', $num, $name);
}
<select class="span4" name="frm" id="frm" required>
<option value="6">July</option>
<option value="7">August</option>
<option value="8">September</option>
<option value="9">October</option>
<option value="10">November</option>
<option value="11">December</option>