|
||||
Zeitdifferenzen berechnen ohne Jahr
Hallo,
ich war zwar lange nicht mehr hier, hab aber mal wieder ein Frage Es geht um die Differenzen von Daten (also wie viele Tage liegen zwischen zwei Daten). Das Problem: Die Daten liegen ohne Jahr vor (bzw. das sollte sie, da es sich wiederholende Daten sind - genauer: Saisons) Ich bin nun mittlerweile schon so weit, dass alles funktioniert, solange man im gleichen Jahr Anfängt zu buchen. Das Problem liegt immer am Jahr, da ich dass eigentlich ignorieren muss, aber um die Zeitfunktionen von PHP zu nutzen, jedesmal dazu schreiben muss. Mein bisheriger Ansatz sieht folgendermaßen aus: PHP-Code:
Der Saisonbeginn steht in $->start und das ende log. in $->end Die Parameter sind das Startdatum ($start), das $enddatum($end) und eine Datenbank-Id die zur berechnung nicht weiter von interesse ist Es wäre wirklich super, wenn ihr mir da helfen könntet!
__________________
Meine Spielwiese: http://blog.kanedo.net Ich bei Flickr? Da: Flickr: Fotostream von kanedo-projekt Für open Source Liebhaber: open Com Auch ich Zwitschere als @kanedo |
Sponsored Links |
|
|||
Ohne jetzt den Code gelesen zu haben: Eine Session ist nie länger als ein Jahr? Wenn ja, könntest du ja einfach das aktuelle Jahr - 1 rechnen, dann hast du wieder eine Jahreszahl.
Aber warum musst du das Jahr ignorieren?
__________________
Small boy wrote to Santa Claus:"Send me a brother!" Santa wrote back: "Send me your mother" |
Sponsored Links |
|
||||
Zitat:
Was ist denn zum Beispiel, wenn die Saison von 1.8-30.9 geht und du jetzt die Reise vom 26.08.2011 - 2.09.11 machst, dann würde das mit Jahr-1 nicht mehr hinhauen, oder versteh ich das falsch Das jahr muss ich ignorieren, weil die Saisons unabhängig vom Jahr sind - die gibt es jedes Jahr
__________________
Meine Spielwiese: http://blog.kanedo.net Ich bei Flickr? Da: Flickr: Fotostream von kanedo-projekt Für open Source Liebhaber: open Com Auch ich Zwitschere als @kanedo |
|
||||
Das dachte ich mir auch schon. Nur gibt es dann den Fall, dass jemand seine Reise erst im nächsten Jahr macht, dann gibt's gar keine Saisons mehr
Bisher mache ich es so. Ich nehme das aktuelle Jahr. Dann prüfe ich, ob sowohl start als auch end datum vor dem aktuellen liegen, wenn ja: dann erhöhe ich das jahr um 1 Jetzt bleibt eben nur noch das problem was passiert wenn das aktuelle Jahr, nicht mit dem der Reise übereinstimmt. Was passiert wenn jmd mal mehr als 1 Jahr verreisen möchte (unwahrscheinlich, aber kann ja passieren...)
__________________
Meine Spielwiese: http://blog.kanedo.net Ich bei Flickr? Da: Flickr: Fotostream von kanedo-projekt Für open Source Liebhaber: open Com Auch ich Zwitschere als @kanedo |
|
||||
Wenn jemand mehr als ein Jahr verreisen will, dann passt das aber nicht mehr in die Saison.
Du sagtest ja bereits, dass es die Saisons jedes Jahr gibt. Die Daten bleiben anscheinend dieselben, sonst würden ja die Jahreszahlen mit dran hängen. Plant jetzt jemand im nächsten Jahr, so findet die Saison da ja auch wieder statt. Du musst also einfach prüfen ob die Saison zutrifft und dann das entsprechende Jahr buchen. Die Jahreszahl würde ich an die Saison hängen. Du musst ja auch prüfen ob in der gebuchten Saison (inkl. Jahreszahl) noch etwas frei ist. Du kannst daher problemlos die Jahreszahl an die Saison hängen. Wenn die Saisons dann ändern, sollte das halt früh genug bekannt sein, sodass entsprechend die Saisons umgeschrieben werden können. Ist es egal, wann die Person zurück kommt? Wenn jemand mehr als ein Jahr am gleichen Platz bleibt, dann musst du Reise halt in der Startsaison und in den darauf folgenden und ebenfalls benötigten Saisons buchen. Ich verstehe allerdings immer noch nicht 100% des Problems, was aber daran liegen kann, dass der Ausschnitt den ich kenne sehr gering ist
__________________
Rettet die Erde.... sie ist der einzige Planet mit Schokolade! |
|
|||
Ich irgendwie auch nicht.
__________________
Small boy wrote to Santa Claus:"Send me a brother!" Santa wrote back: "Send me your mother" |
|
||||
Ok ich versuchs noch einmal anders zu klären.
Es geht um eine Reise. Bei der Berechnung des Preises gibt es verschiedene Saisons. Diese werden im Format TT.MM angegeben. Ich habe also ein Start-Datum der Reise im Format TT.MM.JJJJ und ein Enddatum im gleichen Format. Die Aufgabe besteht darin, herauszufinden, wie viele Tage der Reise in welcher Saison liegen. Das große Problem liegt nun im fehlenden Jahr der Saisons. Beginnt die Reise im aktuellen Jahr, funktioniert der Quellcode oben. Aber beginnt sie später, oder die Reise länger als ein Jahr (d.h. eine Saison kommt mehrmals vor), versagt der "Algorithmus" Ist das jetzt verständlicher? Ich glaube ich hab selbst noch nicht komplett durchgeblickt...
__________________
Meine Spielwiese: http://blog.kanedo.net Ich bei Flickr? Da: Flickr: Fotostream von kanedo-projekt Für open Source Liebhaber: open Com Auch ich Zwitschere als @kanedo |
|
||||
Zitat:
Das Saison-Model ist außerdem eines, was sehr häufig bei Reiseanbietern praktiziert wird (Im Sommer zahl man immer mehr als im Winter)
__________________
Meine Spielwiese: http://blog.kanedo.net Ich bei Flickr? Da: Flickr: Fotostream von kanedo-projekt Für open Source Liebhaber: open Com Auch ich Zwitschere als @kanedo |
Sponsored Links |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Höhe eines Elements berechnen und woanders zuweisen | micronix | Javascript & Ajax | 3 | 19.04.2011 23:48 |
Vertikale CSS Navigation mit Bildern und Text | macmensa | CSS | 2 | 25.07.2009 17:23 |
Uhrzeiten berechnen | IronThunder | Javascript & Ajax | 4 | 04.07.2007 12:41 |
Vista läuft ein Jahr ohne Aktivierung | kadees | Offtopic | 6 | 19.03.2007 19:41 |
Werte berechnen? (Breite/Höhe, Abstand, ...) | neurologic scientist | CSS | 6 | 13.09.2006 18:56 |