ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
839
839
EMPFEHLEN
-
28.10.04 15:45 #1
Hallo,
ich bin gerade dabei einen kleinen Kalender zu machen. Dieser Kalender speichert in einer MySQL Datenbank das eingetragen Datum, die Uhrzeit als Timestamp ab. Ausserdem wird noch ein Betreff und ein Ort abgespeichert.
Ich möchte als Ausgabe nur die nächsten fünf Termine (Tage) angezeigt bekommen.
Das Problem was sich mir nun stellt ist, wie erzeuge ich diese Ausgabe, welche mir die Termine an einem Tag zuerst zusammenfasst und dann nur fünf Tage anzeigt?
Ich habe die Ausgabe soweit fertig, es werden zum Beispiel 3 Tage gezeigt. Das Problem dabei ist, das zuvor nicht die Termine an einem Tag zusammengelegt werden. Dies bedeutet: Habe ich zwei Termine an einem Tag, bekomme ich bei 3 Tagen nur zwei Tage angezeigt!
Hier mal ein Beispiel:
Eingaben - werden als Timestamp in der DB abgelegt
Ausgabe ist momentan (3 Ausgaben):Montag, 23.05.2005 08:15 - 09:00 Frühstück, Tiffany
Montag, 23.05.2005 10:00 - 12:00 Kalender programmieren, zu Hause
Dienstag, 24.05.2005 17:00 - 20:00 Super Streifen, Kino
Donnerstag, 26.06.2006 21:00 - 24:00 Tutorials.de durchlesen, am PC
Erwünschte Ausgabe sollte aber so ausschauen (3 Ausgaben, da Montag zusammengefasst wurde):Montag, 23.05.2005 08:15 - 09:00 Frühstück, Tiffany
Montag, 23.05.2005 10:00 - 12:00 Kalender programmieren, zu Hause (Problem, sollte eigentlich zum ersten Montag hinzugezählt werden)
Dienstag, 24.05.2005 17:00 - 20:00 Super Streifen, Kino
Ich habe nun auf die Formatierung verzichtet, sollte aber trotzdem klar werden. Das Problem ist, dass ich jeden Datensatz in die DB schreibe, aber wie finde ich die Timestamp mit dem gleichen Datum - unabhängig der Zeitangaben?Montag, 23.05.2005 08:15 - 09:00 Frühstück, Tiffany | 10:00 - 12:00 Kalender
programmieren, zu Hause
Dienstag, 24.05.2005 17:00 - 20:00 Super Streifen, Kino
Donnerstag, 26.06.2006 21:00 - 24:00 Tutorials.de durchlesen, am PC
Ich bräuchte nur einen Tipp zur Sortierung. Dein Eingabe, sowie die Ausgabe stehen bereits - ausser es geht anders.
Wenn mir jemand da einen Tipp geben würde oder sagen kann, ob dies der richtige Weg ist, wäre super.
Ich bedanke mich schon mal für eure Hilfen und Tipps.Geändert von wal (28.10.04 um 15:48 Uhr)
Viele Grüße
Wolfgang
-
Also so wie ich Dich verstanden hab, willst Du für die nächsten 5 Tage die Datensätze aus der Datenbank abfragen und dann, gruppiert nach Datum darstellen? Und dabei soll es keine Rolle spielen, ob Du für einen Tag 1, 10 oder 100 Einträge hast, richtig?
Zitat von wal
Das is doch ganz einfach: Du selektierst aus der Datenbank alle Spalten, wo das Datum in Deinem 5-Tage-Zeitraum liegt. Hierzu gibts ja schöne MySQL-Funktionen für.
So, und bei der Ausgabe machst Du folgendes:
Nachdem Du also die Datenbankabfrage durchgeführt hast, lässt Du bei jedem Schleifendurchlauf prüfen, ob das Datum in der aktuellen Zeile aus dem Recordset mit dem "Tempörären"-Datum, welches Du nach jedem Durchlauf zwischenspeicherst, identisch ist. Falls dies nicht der Fall ist, gibts Du einfach das "neue" Datum aus. Sind die beiden Werte identisch, gibst Du einfach die Daten, die zu diesem Datum gehören, aus.PHP-Code:<?php
$rsDates = mysql_query("SELECT ... FROM ...");
$current_date = false;
while($data = mysql_fetch_row($rsDates)) {
if($current_date != $data['stamp_event']) {
echo 'Einträge für das Datum: '.$data['event_stamp'].'<br />';
}
echo $data['event_description'].'<br />';
$current_date = $data['stamp_event'];
}
?>
So in etwa sollte das funktionieren.You want me to be, something I can never ever be!
-
29.10.04 10:47 #3
Hi Chino,
vielen Dank für deine Hilfe, du hast es genau richtig verstanden.
Ich habe deine Idee aufgegriffen und endlich "die Bäume im Wald erkannt"
Es hat zwar noch einen Moment gedauert, bis ich das so umgesetzt bekam aber nun funktioniert es!
Vielen Dank nochmals.Viele Grüße
Wolfgang
-
Auch wenn das Problem gelöst ist, ich hätte mit der Datefunktion geprüft, ob die Dati (richtig gesteigert?) zusammengehören.
Aber Trotzdem Danke, der Thread hat mir dennoch geholfen, meinen Kalender zu Perfektionieren
Bitte dran denken!
Wenn eure Frage geklärt ist, markiert nach eurer Antwort den Thread als erledigt und bewertet die Antworten
Ähnliche Themen
-
Kalender Tutorial - Event/Termin-kalender daraus gemacht
Von Irgendjemand_1 im Forum PHPAntworten: 25Letzter Beitrag: 01.11.10, 23:42 -
timestamps und Monatsanzeige?!
Von OmegaTCU im Forum Relationale DatenbanksystemeAntworten: 4Letzter Beitrag: 07.05.07, 22:44 -
[Funktionssammlung] Timestamps
Von flokli im Forum PHPAntworten: 0Letzter Beitrag: 02.07.06, 15:38 -
Lokaler Outllok Kalender mit Öffentlichem Kalender auf dem Server synchronisieren
Von EifelFrosch im Forum Office-AnwendungenAntworten: 2Letzter Beitrag: 20.12.05, 09:57 -
Vergleich 2er Timestamps
Von Philipp_Frank im Forum PHPAntworten: 2Letzter Beitrag: 04.10.05, 15:21





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren