我对事件的日期有奇怪的问题,我努力修复它,但无法做到。
我附上了我想如何在页面上显示日期的屏幕截图:
图片中的第一个事件 Deine Energie in Aktion!是 5 个事件的组合,每个事件都有其开始日期和结束日期。
活动的第一部分是为期 1 天的活动,从 4 月 4 日开始,到 4 月 4 日结束。同样,第二部分是 4 月 7 日,第三部分是 4 月 9 日,第四部分是 4 月 20 日
最后一部分从 5 月 5 日开始,到 5 月 10 日结束。
日期以这种格式存储在数据库中:我正在显示事件最后一部分的日期。活动开始日期:2013-05-05 00:00:00 活动结束日期:2013-05-10 00:00:00
所以我想以图片中显示的格式显示日期。
有多种情况:首先,如果所有日期都在一个月内,那么我们只在末尾显示一次月份名称。其次,如果月份更改,则月份名称将显示在更改月份的日期之后。
我在 while 循环中获取事件日期,那么如何在循环中将当前事件日期与即将到来的事件日期进行比较。
这是我迄今为止用来从数据库中获取日期的代码..
$nid = $row->nid;
$get_product_id = "SELECT product_id from {uc_product_kits} where nid='$nid'";
$res = db_query($get_product_id);
while ($get_product_id_array_value = db_fetch_array($res)) {
$prductid = $get_product_id_array_value['product_id'];
$start_date = db_query("select event_start,event_end from {event} where nid=%d",$prductid);
$start_date_value = db_fetch_object($start_date);
$end_value = $start_date_value->event_start;
$event_end_date = $start_date_value->event_end;
$TotalStart = date("d M Y", strtotime($end_value));
$TotalEnd = date("d M Y", strtotime($event_end_date));
$onlyMonthStart = date("M", strtotime($end_value));
$onlyMonthEnd = date("M", strtotime($event_end_date));
//$groupMonth = db_query("select event_start,event_end, month from {event} where nid=%d group by ",$prductid);
if($TotalStart == $TotalEnd ){
$startDay = date("d", strtotime($end_value));
$startMonth = date("M", strtotime($end_value));
if(in_array($startMonth,$newMonth)) {
echo $onlstartdate;
}
else {
$onlstartdate = date("d", strtotime($end_value));
echo $onlstartdate;
$tempStorage[] = $startMonth
}
//$newMonth[] = $startMonth;
}
}