Besten Dank euch beiden für die Info, das hat mir schon weitergeholfen. Ich bin mir jetzt noch nicht sicher, ob ich das clientseitig oder serverseitig machen soll - wie von euch erwähnt.
Client- Seitig: mein Programm wird zwar nur in Mitteleuropa eingesetzt aber Browsereinstellungen sind ja dann auch ein Problem und ich wär halt für andere Zeitzonen nicht offen.
Server-Seitig: es müssen halt einige Daten mehr übertragen werden - is aber soweit ich das jetzt seh nicht so viel (nur eben die Timestamp für die Woche)
Wie würdet ihr das machen, würdet ihr es Clientmäßig machen, damits noch performater ist oder server seitig, wo die Logik für jeden Client einheitlich ist und auch eher leichter zu implementieren ist.
Viele Dank! Hannes
@@Hannes Weninger
wie Implementiert man so eine Kalenderfunktion. Wenn z.B. angenommen heute Sonntag, der 28.08.2015 wäre, wie kann ich die Infos herbekommen, dass der August 31 Tage hat und am Donnerstag der 01.09 anzuzeigen ist.
In keiner Umgebung rechnest du mit Jahr/Monat/Datum(/Stunde/Minute), sondern immer mit dem Timestamp (Zeitstempel). Die oft zugrundeliegende Unix-Zeit fängt am 1970-01-01T00:00Z bei 0 an, Sekunden zu zählen (ohne Schaltsekunden zu berücksichtigen). JavaScript verwendet denselben Nullpunkt, zählt aber in Millisekunden.
Um von Timestamp des Sonntags zu dem des folgenden Donnertags (gleiche Uhrzeit) zu kommen, musst du 4 Tage addieren – umgerechnet in Sekunden also 4 × 24 × 60 × 60 bzw. in Millisekunden 4 × 24 × 60 × 60 × 1000.
Die Umrechnung von Timestamp in von Menschen gebräuchliche Datumsangabe findet bei der Ausgabe statt, nicht früher. Dafür bieten Programmiersprachen entsprechende Methoden (Funktionen).
Andersrum wird sofort nach der Eingabe eine Datumsangabe in einen Timestamp umgerechnet – auch dafür gibt es entsprechende Methoden.
Jahr, Monat, Datum, Stunde, Minute sind Dinge, die innerhalb eines Programmes (oder einer Datenbank) nicht vorkommen.
LLAP 🖖
Ist diese Antwort anstößig? Dann könnte sie nützlich sein.