Hallo,
ich habe eine Seite gebaut, die Events ähnlich einer Abflugtafel auf Flughäfen anzeigt. Sie wird alle 60 sec aktualisiert. Mehrere gleichartige Events an einem Tag sollen aber nur eine Position beanspruchen. Ob das wohl mit einer geschickten SQL- Abfrage geht?
Wenn es nur das wäre, würde ich z.B. GROUP BY titel vorschlagen. Aber es sollen ja alle Zeiten dargestellt werden...
10:00 Solarboot
auch um 11:30, 13:00, 15:00, 16:30, 18:00
Ich Nehme an, dass du die Einträge über eine <table> darstellst. Ein "Haupteintrag" wäre dann z.B. folgende Zeile:
<tr><td>10:00</td><td>Solarboot</td></tr>
Bevor so eine Zeile geschrieben wird, gleichst du den aktuellen Array-Wert Titel (ich gehe hier davon aus, dass du dir das Mysql Ergebnis als Array ausgeben lässt und es dann dem Datum und der Uhrzeit nach durchgehst) mit den restlichen ab. Wenn nochmal der gleiche Titel vorkommt speicherst du dir die Zeit in eine temporäre Variable und löscht den jeweiligen Array-Eintrag.
Wenn du dann in deiner temp. Variable ein Ergebnis hast, schreibt dein Skript dir erst noch z.B:
<tr><td></td><td>Auch um 15:00 und 16:00</td></tr> rein. Ansonsten macht er gleich mit dem nächsten Array-Eintrag weiter.
Ich hoffe, das war einigermßaen verständlich erklärt - sonst frag ruhig nochmal nach...
Das war mein erster spontaner EInfall - es geht also sicher noch eleganter.
Gruß
Alex