【发布时间】:2013-10-15 21:05:29
【问题描述】:
我制作了一个 PHP 事件日历,用户可以在其中添加事件..
现在我想突出显示有活动的那一天。我已经突出显示了当天,如 te sreenshot 所示:
http://i41.tinypic.com/t0nlti.png
</script>
<style>
.today{
background-color: #00ff00;
}
.event{
background-color: #FF8080;
}
</style>
实际代码:
$monthstring = $month;
$monthlength = strlen($monthstring);
$daystring = $i;
$daylength = strlen($daystring);
if($monthlength <= 1){
$monthstring = "0".$monthstring;
}
if($daylength <=1){
$daystring = "0".$daystring;
}
$todaysDate = date("m/d/Y");
$dateToCompare = $monthstring. '/' . $daystring. '/' . $year;
echo "<td align='center' ";
if ($todaysDate == $dateToCompare){
echo "class ='today'";
}
//here it goes wrong..
else
{
$sqlCount = "select * from eventcalendar where eventDate='".$dateToCompare."'";
$noOfEvent = mysql_num_rows(mysql_query($sqlCount));
if($noOfEvent >= 1){
echo "class='event'";
}
}
正如您所见,今天的突出显示效果很好。
$eventsdate = $month."-".$month."-".$day;
数据库布局:
http://i41.tinypic.com/2luvok4.png
希望任何人都可以帮助我。
【问题讨论】:
-
拜托,拜托,拜托,远离标准的 Mysql 函数,使用 MySQLi 或 PDO 之类的东西。你能做一个 $dateToCompare 的 var_dump() 吗?它说什么?
-
哦,我不确定(我从来不是)表字段是否区分大小写。在您的 PHP 脚本中,您在“eventDate”上执行 WHERE,在屏幕截图上显示“EventDate”