Werte mit Mysql vergleichen

ne leider noch nicht. Wenn ich nun z.B. mit

while ($b=mysql_fetch_array($a)) {
$test=$b['von'];
if ($test == "") {
echo ("geht");
} else {
echo ("geht nicht");
}
}

prüfen will ob die Anfrage ein Ergebniss zurück gibt, wird weder "geht" noch "geht nicht2 ausgegeben
 
Mache es uns dch leichter und formatiere deinen Code entsprechend. So wie du hier schreibst, kann man es nur sehr schwer lesen!

Also bearbeite bitte deine Beiträge oder wenigstens den letzten, dann geht es weiter.
 
achso sorry!
also es kommt ein Start ($mydatevon) und eine Enddatum ($mydatebis) vom Formular.

PHP:
$sql = "SELECT * FROM belegung WHERE '$mydatevon' BETWEEN von AND bis OR '$mydatebis' BETWEEN von AND bis";
 echo $sql; 
$a = mysql_query($sql);  
	

while ($b=mysql_fetch_array($a)) {
	$test=$b['von'];
	if ($test == "") {
		echo ("geht");
	} else {
		echo ("geht nicht");
	}
}

Eigentlich sollte das Skript ja nun "geht" ausgeben, wenn der Termin frei ist (also der sqlaufruf keine Rückgabe liefert) und "geht nicht" wenn der Termin nicht frei ist. Ist hier noch ein Fehler weil das so nicht geht?
 
Und deine Felder die das jeweilige Datum enthalten heißen dann auch "von" und "bis". Nachdem das mit dem Tabellennamen schon schief gelaufen ist frage ich zur Sicherheit da nochmal nach.
 
Da die diese Art von Fragen sehr oft kommt, habe ich mal ein Tutorial geschrieben wie man am besten auf Fehlersuche geht.
PHP MySQL Debug Queries
Geh es doch mal durch und falls du die Lösung nicht findest, poste mal das ausgegebe SQL-Statement ins Forum.
 
also der SQL-String sieht folgend aus:
SELECT * FROM belegung WHERE '2012-11-14' BETWEEN von AND bis OR '2012-11-16' BETWEEN von AND bis

Wenn ich das ganze z.B. in phpmyadmin in der Tabelle belegung teste, dann erhalte ich die Meldung:
Code:
MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen). ( die Abfrage dauerte 0.0007 sek. )

Egal ob ich den String nun mit einem bereits in der DB existierenden Datum übergebe oder nicht
 
Die Meldung besagt, dass dein SQL keinen Syntax-Fehler hat. Er findet keine Daten auf dass die Bedinung zutrifft.
 

Neue Beiträge

Zurück