在PHP中创建一个选择菜单,默认从MySQL数据库中选择

在PHP中创建一个选择菜单,默认从MySQL数据库中选择,php,mysql,html,Php,Mysql,Html,我正在为一个站点创建一个管理菜单,我有几个下拉列表,需要为每个不同的字段创建,默认选择的选项对于出现的每个记录都是不同的(这与phpBB中的权限管理面板非常相似)。换句话说,我有一个表,其中列出了用户可能属于的所有组,每行都有用于更改该组权限的选择菜单。我目前正在为每一组不同的菜单使用如下功能: function rfiPermissions($x){ $query = "SELECT rfi_permission FROM groups WHERE id = '$x'"; $result =

我正在为一个站点创建一个管理菜单,我有几个下拉列表,需要为每个不同的字段创建,默认选择的选项对于出现的每个记录都是不同的(这与phpBB中的权限管理面板非常相似)。换句话说,我有一个表,其中列出了用户可能属于的所有组,每行都有用于更改该组权限的选择菜单。我目前正在为每一组不同的菜单使用如下功能:

function rfiPermissions($x){
$query = "SELECT rfi_permission FROM groups WHERE id = '$x'";
$result = mysql_query($query) or die();
$row = mysql_fetch_array($result);
$perm = $row[0];
$option = array();
$option[0] = "<option value='0'>None</option>";
$option[1] = "<option value='1'>Basic</option>";
$option[2] = "<option value='2'>Supplemental</option>";
$option[3] = "<option value='3'>Full</option>";
switch($perm){
    case 0:
        echo $option[0].$option[1].$option[2].$option[3];
        break;
    case 1:
        echo $option[1].$option[0].$option[2].$option[3];
        break;
    case 2:
        echo $option[2].$option[1].$option[0].$option[3];
        break;
    default:
        echo $option[3].$option[1].$option[0].$option[2];
        break;
}
}
函数rfiPermissions($x){
$query=“从id为“$x”的组中选择rfi\U权限;
$result=mysql_query($query)或die();
$row=mysql\u fetch\u数组($result);
$perm=$row[0];
$option=array();
$option[0]=“无”;
$option[1]=“基本”;
$option[2]=“补充”;
$option[3]=“完整”;
交换机($perm){
案例0:
echo$选项[0]。$选项[1]。$选项[2]。$选项[3];
打破
案例1:
echo$选项[1]。$选项[0]。$选项[2]。$选项[3];
打破
案例2:
echo$选项[2]。$选项[1]。$选项[0]。$选项[3];
打破
违约:
echo$选项[3]。$选项[1]。$选项[0]。$选项[2];
打破
}
}

我一直在试图找到一种更加流线型的方法来实现这一点,因为我需要在我的网站上实现更多次,但我一直无法做到这一点。有没有更好的方法可以做到这一点,我可以简单地将选项所需的数组传递到函数中,然后从db中回显一个值,将其从数组中删除,然后回显其余的选项?

使用php设置所选属性比更改顺序更容易。另外,作为一个用户,我喜欢一致性,如果我看到一个下拉列表,每次看到它的顺序都会改变,我会感到沮丧

$option[0] = "<option value='0' ".($perm==0 ? " selected " : "") .">None</option>";
$option[1] = "<option value='1' ".($perm==1 ? " selected " : "") .">Basic</option>";
$option[2] = "<option value='2' ".($perm==2 ? " selected " : "") .">Supplemental</option>";
$option[3] = "<option value='3' ".($perm==3 ? " selected " : "") .">Full</option>";
$option[0]=“无”;
$option[1]=“基本”;
$option[2]=“补充”;
$option[3]=“完整”;
这是在中完成的,可以扩展以提高可读性