我一直在尝试比较查询中的两个日期,代码就像这样
WHERE Reservation.InDate >= ".$_POST['dateSince']."
AND (Reservation.ResStatus = 'Occupied' OR Reservation.ResStatus = 'Vacant')";
查询工作正常,但它没有考虑日期条件,我尝试了两个日期,我尝试交换条件,我尝试了其他方法,但似乎我做错了日期。
我已经回显了$ _POST ['dateSince'],页面确实回显了所选的日期。 我很感激任何提示。
答案 0 :(得分:0)
这个:
".$_POST['dateSince']."
应该被
包围 ''
喜欢这个
'".$_POST['dateSince']."'
你应该清理你的变量以保护自己免受sql注入, 如果你使用的是mysql
WHERE Reservation.InDate >= '".mysql_real_escape_string($_POST['dateSince'])."'
AND (Reservation.ResStatus = 'Occupied' OR Reservation.ResStatus = 'Vacant')";
如果您使用的是mysqli
WHERE Reservation.InDate >= '".mysqli_real_escape_string($link, $_POST['dateSince'])."'
AND (Reservation.ResStatus = 'Occupied' OR Reservation.ResStatus = 'Vacant')";
注意:更好地了解mysqli或PDO编写的语句......