Beitrag von Marco Weber (67 Beiträge) am Donnerstag, 10.Mai.2001, 21:47.
eine wirklich ultra-komplexe datumsabfrage...
Antworten
Beitrag von Sander (8133 Beiträge) am Donnerstag, 10.Mai.2001, 23:09.
Re: eine wirklich ultra-komplexe datumsabfrage...
Antworten
Beitrag von Sander (8133 Beiträge) am Donnerstag, 10.Mai.2001, 23:15.
Re: eine wirklich ultra-komplexe datumsabfrage...
Antworten
Beitrag von Ruben (403 Beiträge) am Freitag, 11.Mai.2001, 07:43.
Re: eine wirklich ultra-komplexe datumsabfrage...
so zeigt er aber nur bis zu einem Tag vor $end_dat an, zum Wert von $end_dat nuß noch ein Tag dazuaddiert werden.
Hab da tagelang probiert - die von mir eingesetzte Lösung ist die, daß ich das Datum vor Vergleichen oder Abfragen immer in seine Einzelbestandteile zerlege und dann mit die Einzelteilen manipuliere.
In meinem Beispiel-Veranstaltungskalender in der Bib ist dazu ein Teil-Template mit einem Script dazu, vielleicht hilft dir das ja weiter.
CU
Ruben
Antworten
Beitrag von Marco Weber (67 Beiträge) am Freitag, 11.Mai.2001, 22:46.
Re: eine wirklich ultra-komplexe datumsabfrage... NIX HAT GEHOLFEN!
also Ruben wir sind da schon ziehmlich nahe dran... :-)
es geht um folgendes:
ich habe eben die database wo veranstaltungstermine drin stehen, jedoch nicht nur mit einem datum mit einem zeitraum (anfangs und enddatum)...
wenn ich nun z.b. lust habe was zu unternehmen, dann gugg such ich nach allen events, die zwischen dem 23. und 25. sind... :-)
wie kriege ich das raus, wenn die database z.b. einträge wie folgt hat:
($from_dat und $to_dat sind die databasefelder)
9.4.2001 bis 13.4.2001
12.4.2001 bis 19.4.2001
14.4.2001 bis 15.4,2001
und ich aus suchen gehe mit folgenden werten:
($start_dat $end_dat sind die suchvariablen)
11.4.2001 bis 15.4.2001
dann müssten ja alle drei einträge angezeit werden!
wie mache ich das??
ICH KRIEG DAS NICHT HIN... :-(
BIN AM VERZWEIFELN... :-(
BITTE HELFT MIR! :-)
MFG MARCO...
Antworten
Beitrag von Ruben (403 Beiträge) am Samstag, 12.Mai.2001, 16:13.
Re: eine wirklich ultra-komplexe datumsabfrage... NIX HAT GEHOLFEN!
Mhm, jetzt habe ich das erst richtig kapiert.
Du hast Events in der db und für (jeden) ein Startdatum und ein Enddatum.
Nun willst du bei einer gezielten Abfrage, also wie oben vom 11.4. bis 15.4. alle Events angezeigt bekommen, deren Zeitraum innerhalb dieses Zeitraumes liegt, also auch den Event vom 9.4. bis 13.4. ?
grr - das ist echt kompliziert - selbst in ner high-level-Programmiersprache haste da ein echtes Problem.
Ansatzweise ist das vielleicht so zu lösen:
Du liest einen Event aus der db, füllst eine Liste mit den Datumwerten von $from_dat bis $to_dat und vergleichst jeden Wert der Liste ob (mindestens) einer der Datumswerte größer oder gleich dem Filterwert $start_dat und kleiner dem Filterwert $end_dat + 1Tag (bp-Workaround) ist.
Schwierig wirds, wenn monatsübergreifenden Zeiträume vorhanden sind, da muß dann noch mal mit den Tagen des Beginnmonats verglichen werden - naja, ist ne echte Aufgabe :-)
Wenn dus hingekriegt hast, stells bitte in die BIB, sicher interessiert die Lösung einige Leute.
Nur zum Trost - an meinem Veranstaltungskalender und der Filterauswertung hab ich vielleicht 50 Stunden gebastelt und immer wieder irgend ne Macke entdeckt, also - nicht entmutigen lassen - solange weitermachen, bistes hast!
CU
Ruben
Antworten