namenlijst MET eerste letter
Hallo 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
Gesponsorde koppelingen:
Code (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
bedankt 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!
substr = 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
Bedankt, 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
(snap het nu, erg bedankt hier had ik nooit opgekomen!)



