datum aller Wochentage

pb_sergio

Mitglied
Hallo Leute ich habe ein kleines Problem. Ich mache gerade einen Terminplaner und der soll die Funktion besitzen, dass ich mir alle Termine einer Woche an sehen kann.

Beispiel:
Heute ist der 08.06.05 ein Mittwoch. Es sollen mir aber auch alle Termine der Woche gezeigt werden.Um die Termine aus der Datenbank zu holen brauch ich immer das Datum der anderen Tage.

Meine Frage ist wie bekomme ich das Datum für die anderen Tage zustande. Habe keine Idee!

THX
 
Der aktuellen Woche oder eine Woche lang also in dem Fall von MI bis MI ?
Evtl hätte ich mit date() geschaut welher Wochentag ist, anhand dessen mir das Datum für den Montag rausgeholt und entsprechen den Sonntag mit.
Dann kannst du in der DB im Where die beiden verwenden, sofern dein Datumsfeld in der DB DAtetimeist oder du mit timestamps arbeitest.
 
Hi,

Ich denke mal, du willst nur wissen, wie man das Datum erstellen/ausgeben lassen kann.

Hierzu wäre der Code folgender:

PHP:
<?php
$datum = date("d.n.Y"); // aktuelles Datum wird an $datum übergeben.
$zeit = date("G:i:s"); // aktuelle Uhrzeit an $zeit übergeben.
echo "Heute ist der $datum. es ist $zeit Uhr."; // Ausgabe
?>

Gruss
Commi
 
Wenns nur darum geht wie du die Daten für die nächsten Tage aus der DB bekommst kannst du es ja so machen:

PHP:
<?

switch($tag)
{
  case "morgen":
    $where = "WHERE datum > ".time()." AND datum < ".time() + 86400;
    break;
  case "übermorgen":
    $where = "WHERE datum > ".time() + 86400." AND datum < ".time() + 2 * 86400;
    break;
  //.... usw...
}

$sql = "SELECT * FROM bla_table $where";

//... der rest

?>

EDIT: hab das andere erst jetzt gelesen... hehe, ja wenn du zu dem heutigen datum 86400 sekunden addierst hast du auf jeden fall den nächsten Tag und dann kannst du das anwenden, was schon gescherieben wurde, mit der date() funktion
 
Zuletzt bearbeitet:
Danke für eure Hilfe habe es anders gelöst! Habe die Datenbank ein wenig erweitert.
Es wird nun noch zusätzlich die Kalenderwoche gespeichert. hatte das Theater leid und so geht es noch viel einfacher.
zum angegebenen Datum lass ich mir einfach die KW geben und speichere Sie in der DB
 
In MySQL gibt es die Funktion WEEK. Dann musst Du keine unnötigen, redundanten Daten in Deiner Datenbank speichern, sondern kannst immer bei der Abfrage die Woche aus dem Datum erzeugen.

Gruß hpvw
 
hpvw hat gesagt.:
In MySQL gibt es die Funktion WEEK. Dann musst Du keine unnötigen, redundanten Daten in Deiner Datenbank speichern, sondern kannst immer bei der Abfrage die Woche aus dem Datum erzeugen.

Gruß hpvw
Daran dachte ich auch zuerst, allerdings weiss er dann immernoch nicht, was der dazugehörige Montag für ein Datum hat.
Die Kalenderwoche bekommt man ja auch mit date("W",$timestamp); recht einfach raus.
 
Wenn ich Ihn vorher richtig verstanden habe, will er auch nicht die tatsächlichen Tage, sondern die Termine dieser Woche.
Dann sollte sinngemäß ein solches Query zum Erfolg führen:
Code:
SELECT * FROM `Termine` WHERE WEEK(`datum`,1)=WEEK(CURDATE(),1)
Das Datum sollte natürlich als DATE oder DATETIME gespeichert sein.
Von Heute bis zum selben Wochentag nächster Woche (+ 7 Tage) ist natürlich auch möglich, ohne WEEK:
Code:
SELECT * FROM `Termine` 
WHERE 
    TO_DAYS(`datum`)>=TO_DAYS(CURDATE()) 
    AND TO_DAYS(`datum`)<=TO_DAYS(CURDATE()) + 7

Gruß hpvw
 
Zurück