如何根据用户输入对选择选项进行排序

时间:2016-05-14 14:17:33

标签: php

请不要知道如何实现这一点,所以我需要帮助。我有这段代码:

<select>
    <option>Sunday</option>
    <option>Monday</option>
    /* this option goes down to Saturday */
</select>

并且用户必须选择插入数据库的选项,假设用户选择星期二并希望稍后编辑它。现在我希望看到周二的选项,例如:

<select>
    <option>Sunday</option>
    <option>Monday</option>
   <option>Tuesday</option> /* this option will be the visible option before the user opens the selection */
</select>

我希望通过PHP实现这一点,并且分配给输出数据库信息的变量为$day所以$day = 'Tuesday';请问我该如何实现?

2 个答案:

答案 0 :(得分:3)

要在PHP中执行此操作,您可以执行此操作

<select>
    <option <?PHP echo $day=='Sunday' ? '"selected=selected"' : ''); ?>>Sunday</option> 
    <option <?PHP echo $day=='Monday' ? '"selected=selected"' : ''); ?>>Monday</option> 
    <option <?PHP echo $day=='Tuesday' ? '"selected=selected"' : ''); ?>>Tuesday</option> 

...

</select>

但它不是很优雅而且难以编码,更重要的是维护如果选择包含更多的一周七天。

因此,使用一组日期名称和一个foreach循环以及包含用户所选日期的$day变量。

<?php
$dow = array('Sunday','Monday','Tuesday','Wednesday',
             'Thursday','Friday','Saturday');
?>
<select name="DayOfWeek">

<?php
    foreach ( $dow as $d ) :
        $sel = $d == $day ? 'selected="selected"' : '';
        echo "<option $sel>$d</option>";
    endforeach;
?>
</select>

答案 1 :(得分:1)

您可以尝试这个示例,您可以申请所有选择

npm install -g angular-cli