Beitrag von Jürgen (614 Beiträge) am Freitag, 27.Februar.2004, 14:35.
@BP-Profis/vergleichen Datum
Hi BP-Freaks,
hab mal wieder ein Prob - weis nicht, wie ich das anpacken soll.
Also, ich habe eine DB mit den Felder Preis(Zahl), von(Datum Tag0.Monat0)
und bis(Datum Tag0.Monat0).
So, jetzt hab ich da folgende Inhalte in der DB:
von 21.10. bis 15.03. 40 Euro
von 16.03. bis 20.07. 56 Euro usw...
Jetzt sollte immer nur der Gültige Preis in mein Template geholt werden.
Hoffe, mich verständlich ausgedrückt zu haben. ;-)
Wer hat eine Tipp für mich?? Danke
Gruß
Jürgen
Antworten
Beitrag von Pouraga (1396 Beiträge) am Freitag, 27.Februar.2004, 15:07.
Re: @BP-Profis/vergleichen Datum
Antworten
Beitrag von Jürgen (614 Beiträge) am Freitag, 27.Februar.2004, 16:49.
Re: @BP-Profis/vergleichen Datum
Hi Pouraga,
nö - haut nich hin. Da wird mir nichts ausgelesen.
Hab sogar die Felder um das Jahr erweitert.
Noch ne Idee??
Gruß
Jürgen
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Freitag, 27.Februar.2004, 19:05.
Re: @BP-Profis/vergleichen Datum
Sollte aber gehen ;-)
Gib mal a) Deinen Code und b ) Link zum Austesten... ;-)
Antworten
Beitrag von Jürgen (614 Beiträge) am Freitag, 27.Februar.2004, 21:11.
Re: @BP-Profis/vergleichen Datum
Hi Christoph,
jupp - du hattest recht, hatte etwas umgeproggt und dann funzte es ;-)
Hier der Code:
$zeit=datum(jetzt,"Tag0.Monat0.2004");
get "von<$zeit&bis>=$zeit","buchung";
$Preis;
So, jetzt hab ich ein dickeres Prob.
Wie kann ich eine addierung basteln??
Hier mal der Code:
for (my $i=0; $i<$Personen; $i++)
{
$Jahrgang = "Jahrgang_$i";
$heute=datum("jetzt","Jahr");
$alter=($heute-$$Jahrgang);
if ($alter>=12)
{$PreisOK=$Preis;}else{if ($alter<=3){$PreisOK=0;}else{$PreisOK=($Preis*0.5);
}
}
Da müsste ich jetzt die x mal durchlaufene Schleife die Preise
addiert werden und in einer Variable gespeichert werden, Uff - ?????????
Oder bin ich da auf dem Holzweg ;-)
Zum bessern Verständnis hier der Link: http://www.baseportal.de/cgi-bin/baseportal.pl?htx=/juergen/buchung/buchung
Wer hat Rat für mich?? Danke.
Gruß
Jürgen
Antworten
Beitrag von Jürgen (614 Beiträge) am Freitag, 27.Februar.2004, 22:24.
Re: @BP-Profis/vergleichen Datum
Hi!!
also, ich hab da jetzt mal was zusammen gestoppselt - und es funzt *ggg*
Denke aber, das geht sicher perltechnisch besser ,-)
for (my $i=0; $i<$Personen; $i++)
{
$Jahrgang = "Jahrgang_$i";
$heute=datum("jetzt","Jahr");
$alter=($heute-$$Jahrgang);
if ($alter>=12)
{$PreisOK=$Preis;}else{if ($alter<=3){$PreisOK=0;}else{$PreisOK=($Preis*0.5);
}
}
$var="Preis_$i";
${"$var"}="$PreisOK";
$summe=$Preis_0+$Preis_1+$Preis_2+$Preis_3+$Preis_4+$Preis_5+$Preis_6 ... usw... bis +$Preis_30;
}
out "<br><br>$summe";
Die Zeile $summe - hmm, ich muß alle Varianten abfragen - gibt es da eine
bessere Lösung ??? Danke.
Gruß
Jürgen
Antworten
Beitrag von hempelr (1976 Beiträge) am Freitag, 27.Februar.2004, 19:47.
Re: @BP-Profis/vergleichen Datum
günstig beim Datum ist nach meiner Erfahrung immer, bei Vergleichen das explizit in das interne Format zu wandeln und dann im while_get_next mit if auf das interen Datum zu vergleichen.
Genau das Thema gabs schon mal vor langer Zeit mit den Flügen, da waren auch saisonale Preise und die sollten gefiltert werden, was aber nich hinzukriegen war (mit den "einfachen" bp-Mitteln)
also mal als Denkanstoss:
----schnipp
# not tested!
$a_vergl_von = datum(jetzt,"intern");
get "angebot==* von<=$a_vergl_von", "deinedb";
while (get_next("deinedb"){
$a_vergl_bis = datum($bis,"intern");
if ($a_vergl_bis ge $a_vergl_von){
out....
}
}
---schnapp
kann auch sein, du musst beim internen Datumsformat noch alles was mehr als JahrMonatTag ist wegschneiden, damit ein einheitlicher String verglichen werden kann...
Das Datum ist und bleibt ein "elender Brocken" obwohl Christoph da schon allerhand erleichtert hat und die Filterung nach Datumswerten ist nicht immer trivial....
Hth
Ruben
Antworten
Beitrag von Jürgen (614 Beiträge) am Montag, 1.März.2004, 00:04.
Re: @BP-Profis/vergleichen Datum
Hi!
So, jetzt ist es fast fertig - mein "kleines" Buchungs Tool ,-)
Na ja, besser geht's immer *ggg*, aber für das kleine Hotel auf Zypern - denke ich,
ist es ausreichend. Wer will kann es ja mal testen - GEBUCHT WIRD DA NICHTS !! ;-))
Am Schluß, lasse ich die errechneten Werte in eine Variable setzen und übergebe sie
dann an die DB weiter inkl. Adressblock.
Hier mal der Link: http://www.baseportal.de/cgi-bin/baseportal.pl?htx=/juergen/buchung/buchung&Status=0
Und ???
Gruß Jürgen
Antworten
Beitrag von kai wunderlich (0 Beiträge) am Montag, 1.März.2004, 08:44. WWW: oeffnungszeiten-hamburg.de
Re: @BP-Profis/vergleichen Datum - Kosmetik
Hallo Jürgen,
was man nicht alles mit bp machen kann !
Nur eine kosmetische Sache:
Bei der Ausstattung rutscht bei mir der der 2. Auswahlpunkt (mit Klima) in die nächste Zeile.
Ich benutze K-Meleon 0.8.2.
Ansonsten: super gemacht !!!
Gruß
kai
Antworten
Beitrag von Jürgen (614 Beiträge) am Montag, 1.März.2004, 11:33.
Re: @BP-Profis/vergleichen Datum - Kosmetik
Hi Kai,
Danke - ja, BP ist genial ,-)
Hab noch mal die Ausstattung (Klima) geändert - bricht es jetzt immer noch um ??
Ich Teste nur mit IE, NS und evtl. noch mit Opera.
Hi Sascha,
Danke dir auch für das Lob.
Ja, du hast recht - ist nur eine Anfrageformular. Mit Zimmerkontingent ist da noch nichts geproggt. Mords Aufwand ,-)
Vorab reicht das für das kleine Hotel auf Zypern. Wenn ich die Seite fertig hab,
dann stell ich mal den Link rein.
Gruß
Jürgen
Antworten
Beitrag von Jürgen (614 Beiträge) am Dienstag, 2.März.2004, 15:59.
Re: @BP-Profis/vergleichen Datum - Kosmetik
Antworten
Beitrag von sascha (539 Beiträge) am Montag, 1.März.2004, 09:53.
Re: @BP-Profis/vergleichen Datum
morgen jürgen,
schick umgesetzt & schön übersichtlich!
vor allem die kummulierung und ausgabe der preise
finde ich gelungen.
im grunde wie bei den online-buchungssystemen.
ist aber nur eine unverbindliche anfrage - oder ?
kein zimmerkontingent, was man abbuchbar machen kann,
was NO sagt, wenn nichts mehr vorhanden.
top!
sascha
Antworten