我的数据库中有几个活动,但我想隐藏过去的那些活动,所以我修改了我的MySQL请求:
$sql = "SELECT * FROM tblAgenda WHERE date <= CURDATE() order by date ASC";
但除了给出错误之外,它没有做任何事情。怎么了?
答案 0 :(得分:1)
好像你没有得到任何结果,所以这就是错误。你总是需要在循环之前检查结果,你不能只假设每个查询都会返回一些东西。
此外,如果你想要现在/将来的东西,你的比较操作数是向后的:
$sql = "SELECT * FROM tblAgenda WHERE date >= CURDATE() order by date ASC";
把它放在一起:
$sql = "SELECT * FROM tblAgenda WHERE date >= CURDATE() order by date ASC";
$result = mysql_query($sql);
if (!$result) {
// do something to handle zero results here
} else {
// do your usual while... loop
while ($row = mysql_fetch_assoc($result)) {
// code for each result row
}
}