如何按字母顺序显示下拉列表中的元素,而不是按DB中的ID顺序显示

时间:2011-06-09 19:06:44

标签: php mysql

我想在“开启”下拉列表中按字母顺序列出网站

http://virchoo.neighborrow.com/postcard

 <div class="line">on <select name="connection">
                <?php foreach($System->ClientHandler->getClientList() as $client): if($client->id != 4): ?>
                    <option value="<?= $client->id ?>"><?= $client->name ?></option>
                <?php endif; endforeach; ?>
                <option value="4">other</option>
            </select></div>

4 个答案:

答案 0 :(得分:3)

在查询中添加“ORDER BY”子句。

答案 1 :(得分:2)

您可以在SQL查询中使用"ORDER BY"子句。

SELECT * FROM clients ORDER BY name ASC

答案 2 :(得分:1)

如果要从数据库中选择客户端列表,请在查询中添加ORDER BY。如果您正在使用某个库并且无法对其进行排序,则可以在生成HTML中的选择列表之前将getClientList()结果分配给数组,然后sort that array。如果排序不明显,则可能需要使用usort()函数。

答案 3 :(得分:1)

getClientList()是你的代码,这是你唯一使用它的地方吗?如果是这样,请在getClientList()中对结果进行排序。如果没有,请将getClientList()的结果复制到一个数组中,对其进行排序,然后迭代它。