Hallo Leute,
ich habe ein Problem was ich rei gar nicht verstehe. Ich habe eine Tabelle mit Anreise und Abreise Datum für Zimmerbuchungen, beide Felder haben den Feldtyp Date.
Wenn ein Eintrag gemacht wird stehen die Datumseingaben die sich aus Formularfeldern ergeben korrekt so drin in der Tabelle.
So und nun habe ich bei dem ersten Buchungsschritt eine Checkabfrage gemacht ob das Zimemr in diesem Bereich überhaupt Buchbar ist.
Und da tritt ein Problem auf was ich mir nicht wirklich erklären kann!
Hier mal der abfrage code
So ich ahbe es mal nur auf das nötigste beschränkt, denn wenn was eingetragen wird passt das auch. Nun beim testen habe ich bemerkt das die Abfrage nicht greift beim vorkommen einer buchung und habe mir zum debuggen mal nach dem absenden den sql-string ausgeben lassen. Und das Ergebniss ist nun aber überraschend und will mir nicht in den Kopf.
Hier Debugging Ausgabe
Wie Ihr sehen könnt fehlt eine 0 bei der Monatsangebe, aber in der Tagesangabe ist die 0 da.
Und was mich noch mehr irritiert ist, das bei einem Eintrag das Datum in beiden Feldern korrekt in der DB steht.
Kann mir da einer weiterhelfen woran das liegt?
Danke sehr f+r die Hilfe mfg litter
ich habe ein Problem was ich rei gar nicht verstehe. Ich habe eine Tabelle mit Anreise und Abreise Datum für Zimmerbuchungen, beide Felder haben den Feldtyp Date.
Wenn ein Eintrag gemacht wird stehen die Datumseingaben die sich aus Formularfeldern ergeben korrekt so drin in der Tabelle.
Code:
anreise 2009-04-05 abreise 2009-04-11
Und da tritt ein Problem auf was ich mir nicht wirklich erklären kann!
Hier mal der abfrage code
PHP-Code:
//abfragen aus der buchungstabelle machen nach zimmer und anr wie abr datum
$sqlbefehl ="
Select
id_buch,
zimmer,
anreise,
abreise
From
buchungen
Where
anreise
BETWEEN
$date_anr
AND
$date_abr
AND
MATCH (zimmer) AGAINST ('".mysql_real_escape_string($zimmer)."' IN BOOLEAN MODE)
";
$erg_check = mysql_query($sqlbefehl)or die(mysql_error().$sqlbefehl);
//checken ob zimmer in dem zeitbereich gebucht ist
if(mysql_num_rows($erg_check)>0)
{
$error['check'] = 'Zimmer ist in diesem Zeitraum nicht buchbar!';
}
//wenn kein fehler dann variablen in session vars schreiben
if(!$error)
{
die($sqlbefehl);
}
Hier Debugging Ausgabe
Select id_buch, zimmer, anreise, abreise From buchungen Where anreise BETWEEN 2009-4-05 AND 2009-4-11 AND MATCH (zimmer) AGAINST ('Zimmer 3' IN BOOLEAN MODE)
Und was mich noch mehr irritiert ist, das bei einem Eintrag das Datum in beiden Feldern korrekt in der DB steht.
Kann mir da einer weiterhelfen woran das liegt?
Danke sehr f+r die Hilfe mfg litter
Kommentar