从mySQL的预选列表菜单或复选框结果php


preselected list menu or checkboxes from mySQL results in php

我不擅长php。我安静地掌握了一点,但今天这句话又把我的知识不足推到了一点。

我有一个多选择列表,从一些SQL结果填充…一切顺利

<select name="groups[]" size="1" multiple class="groups" id="select">
<?php
do {  
    ?>
    <option value="<?php echo $row_rsGroups['group']?>">
    <?php echo $row_rsGroups['group']?>
    </option>
    <?php
} while ($row_rsGroups = mysql_fetch_assoc($rsGroups));
$rows = mysql_num_rows($rsGroups);
if($rows > 0) {
    mysql_data_seek($rsGroups, 0);
    $row_rsGroups = mysql_fetch_assoc($rsGroups);
}
?>
</select>

工作得很好,但我接下来要做的是,在列表中已经高亮显示了某些值,这些值来自数组。

因此列表到达页面,其中包含所有可用的组,即法律,销售,营销,管理,促销等

但是我希望其中一个或多个已经根据数组突出显示,即legal和sales,所以$group_array = "legal,sales"

这就是我被卡住的地方

希望有意义

已经考虑过将其作为一堆复选框来提供,但却更加卡住了,并且无法完全理解如何使用复选框来生成

帮助! !

如果你的数据是这个格式的字符串:local,sales,这将工作:

<select name="groups[]" size="1" multiple class="groups" id="select">
    <?php
    do {  
        $selected = "";
        if (substr_count($group_array, $row_rsGroups['group']) > 0) $selected = " selected='"selected'";
        ?>
        <option value="<?php echo $row_rsGroups['group']?>"<?php echo $selected; ?>>
        <?php echo $row_rsGroups['group']?>
        </option>
        <?php
    } while ($row_rsGroups = mysql_fetch_assoc($rsGroups));
    $rows = mysql_num_rows($rsGroups);
    if($rows > 0) {
        mysql_data_seek($rsGroups, 0);
        $row_rsGroups = mysql_fetch_assoc($rsGroups);
    }
    ?>
    </select>

现在,如果你的数据是在一个数组中,即_POST_GET,你应该改变if为:

if (in_array($row_rsGroups['group'], $group_array))