如何解决按字母顺序排列PHP,MySql,但在每组之前列出字母
|| 说我有一张桌子:First | Last
-------------------
Bob Dylan
Ashley Scott
Lol Cats
black cake
它会命令他们,但这样做
A:
Ashley Scott
B:
Bob Dylan
Black Cake
L:
lol cats
我知道如何从MysqL中按abc列出。但我想让它在每组名称之前加上字母。这样我就可以创建一个漂亮的界面,并且在页面顶部具有A B C D字母的联系人顶部#letterL
我知道如何在网址中执行#links。它只是div ID。我知道如何从MysqL中抢夺。我不确定的部分是在以该字母开头的名称组之前回显该字母。
我正在考虑获取将其保存在变量中的名称的首字母。
if ($lastletter == $currentleter) {
echo name
} else {
$lastletter = $currentleter;
echo \'<div id=\"Letter \' . $currentleter . \'\" class=\"letterheader\">\' . $currentleter . \'</div>\';
}
不知道这个想法是否会是一个有效的想法。这样马上行吗?
解决方法
未经测试的代码,但类似的东西应该可以工作:
$currentleter = substr($name,1);
if ($lastletter != $currentleter){
echo \'<div id=\"Letter\' . $currentleter . \'\" class=\"letterheader\">\' . $currentleter . \'</div>\';
$lastletter = $currentleter;
}
echo $name;
, 您可以按名字顺序选择记录。
$sql = \"select * from tblname order by firstname\";
$lastletter = \"A\";
echo $lastLetter;
if ($lastLetter != substr($firstname,1))
echo $lastLetter;
echo $firstname;
, 这看起来是一个很好的解决方案,除了ID中不能包含空格,因此您想更改
<div id=\"Letter \' . $currentleter . \'\" class=\"letterheader\">
至
<div id=\"Letter_\' . $currentleter . \'\" class=\"letterheader\">
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。