在生成的日历中指示开始/结束日期的问题


Issue with indicating start/end dates in a generated calendar

我有一个事件日历,如果有事件,它的颜色会像当天的蓝色一样。我想以同样的方式在日历上显示开始和结束日期。示例if和事件开始于2012年1月1日,结束于2012年3月1日。

我在2012年1月1日至2012年3月1日期间无法使用蓝色来指示活动的开始和结束日期。

下面的代码显示了我是如何试图解决这个问题的,它是有效的,但它认为事件从每个月的1号开始,到3号结束,这是错误的。

请告诉我如何改进此代码或做一些不同的事情来使其工作。感谢

  $todaysDate = date("d/m/Y");
  $dateToCompare = $daystring . '/' . $monthstring . '/' . $year;
  echo "<td align='center' ";
  if($todaysDate == $dateToCompare){
    echo "style='class:red'";
  }else{
    $sqlcount = mysql_query("select * from event where '".$dateToCompare."' >=start_date and '".$dateToCompare."' <=end_date");
    $customerCount = mysql_num_rows($sqlcount); // count the output amount
    while($row = mysql_fetch_assoc($sqlcount)) { 
      $start_date = $row['start_date'];
      $end_day = $row['end_day'];
      if($customerCount >= 1) echo "style='class:blue'";
    } 
  }

不如直接从数据库中获取开始和结束日期。

$stmt = mysql_query(SELECT start_date, end_date FROM EVENT WHERE $your_key);
$event = fetch_array($stmt);

获取结束和开始之间的日期,使用循环按您的意愿给它们上色。