namenlijst MET eerste letter
Mark Vergroesen
02/09/2005 16:47:00Hallo allemaal,
Ik heb een database, met bv een voor en achternaam. Nu wil ik dat alle namen worden weergegeven in een lijst, met vooraan de lijst de eerste letter van de achternaam.. Maar dat alleen bij de eerste met die letter in de achternaam...
Dus dit (met namen steen en steenman)
<table>
<tr><td>S</td><td>Steen</td><td>jan ofzo</td></tr>
<tr><td>(geen letter, er is immers al iemand met een S)</td><td>Steenman</td><td>klaas ofzo</td></tr>
</table>
Wie kan uitleggen hoe ik dit moet doen?
Ik heb een database, met bv een voor en achternaam. Nu wil ik dat alle namen worden weergegeven in een lijst, met vooraan de lijst de eerste letter van de achternaam.. Maar dat alleen bij de eerste met die letter in de achternaam...
Dus dit (met namen steen en steenman)
<table>
<tr><td>S</td><td>Steen</td><td>jan ofzo</td></tr>
<tr><td>(geen letter, er is immers al iemand met een S)</td><td>Steenman</td><td>klaas ofzo</td></tr>
</table>
Wie kan uitleggen hoe ik dit moet doen?
Gewijzigd op 02/09/2005 16:48:00 door Mark Vergroesen
PHP hulp
22/12/2024 17:03:04Peter Dorn
02/09/2005 17:23:00Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?
$sql = "SELECT voornaam, achternaam FROM namen ORDER BY achternaam";
$res = mysql_query($sql);
$key = "";
echo "<table>";
while ($row == mysql_fetch_array($res)) {
$voornaam = $row['voornaam'];
$achternaam = $row['achternaam'];
$letter = substr($achternaam,0,1);
echo "<tr>";
if ($letter != $key) {
$key = $letter;
echo "<td>" . strtoupper($key) . "</td>";
} else {
echo "<td> </td>";
}
echo "<td>" . ucfirst($achternaam) . "</td>";
echo "<td>" . ucfirst($voornaam) . "</td>";
echo "</tr>";
}
echo "</table>";
?>
$sql = "SELECT voornaam, achternaam FROM namen ORDER BY achternaam";
$res = mysql_query($sql);
$key = "";
echo "<table>";
while ($row == mysql_fetch_array($res)) {
$voornaam = $row['voornaam'];
$achternaam = $row['achternaam'];
$letter = substr($achternaam,0,1);
echo "<tr>";
if ($letter != $key) {
$key = $letter;
echo "<td>" . strtoupper($key) . "</td>";
} else {
echo "<td> </td>";
}
echo "<td>" . ucfirst($achternaam) . "</td>";
echo "<td>" . ucfirst($voornaam) . "</td>";
echo "</tr>";
}
echo "</table>";
?>
Gewijzigd op 02/09/2005 17:24:00 door Peter Dorn
Mark Vergroesen
02/09/2005 18:45:00bedankt voor je reactie, ik ken een aantal gebruikte functies niet.. Ik ga het morgen avond proberen, moet nu en morgen overdag weg.. Ik laat hier horen of het gelukt is! bedankt!
Peter Dorn
03/09/2005 00:06:00substr = gedeelte van een string (in dit geval van karakter 0 tot 1, dus de 1e letter)
strtoupper = de hele string in hoofdletters
ucfirst = eerste letter van string in hoofdletter
strtoupper = de hele string in hoofdletters
ucfirst = eerste letter van string in hoofdletter
Mark Vergroesen
03/09/2005 13:37:00Bedankt, dit werkt!!
Ik moet me er nog even in verdiepen hoe het kan, maar het werkt!
Ik moet me er nog even in verdiepen hoe het kan, maar het werkt!
Gewijzigd op 03/09/2005 13:39:00 door Mark Vergroesen