说我有一张桌子:
First | Last
-------------------
Bob Dylan
Ashley Scott
Lol Cats
black cake
它会订购它们但是
A:
Ashley Scott
B:
Bob Dylan
Black Cake
L:
lol cats
我知道如何通过abc从MySql列出。但是我想把它放在每组名字之前。所以我可以制作一个漂亮的界面,并在页面的顶部有顶部的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>';
}
不确定这个想法是否是一个有效的想法。这会是这样做的吗?
答案 0 :(得分:1)
未经测试的代码但是这样的代码应该有效:
$currentleter = substr($name , 0 , 1);
if ($lastletter != $currentleter){
echo '<div id="Letter' . $currentleter . '" class="letterheader">' . $currentleter . '</div>';
$lastletter = $currentleter;
}
echo $name;
答案 1 :(得分:0)
您可以按名字选择包含订单的记录。
$sql = "select * from tblname order by firstname";
$lastletter = "A";
echo $lastLetter;
if ($lastLetter != substr($firstname, 0,1))
echo $lastLetter;
echo $firstname;
答案 2 :(得分:0)
这看起来是一个非常好的解决方案,除了ID之外不能有空格,所以你想要改变
<div id="Letter ' . $currentleter . '" class="letterheader">
到
<div id="Letter_' . $currentleter . '" class="letterheader">
。