PHP代码不确定上午和下午在日期时间



我有数据库列"event_start",其中日期和时间插入在"Y-m-d H: I:s a"格式和"display_time",其中数据插入为"Y-m-d H: I:s a" +45分钟格式在创建事件。这些列类型是varchar(255)

在我的页面上,我显示数据从这个数据库与显示时间在升序模式。但是,如果两行中的日期相同,则不会先显示am,然后显示pm。

使用的代码如下:

<?
$current_date=date("Y-m-d H:i:s a");
$data=mysql_query("select * from  table where display_time >'".$current_date."' order by event_start asc"); 
?>

现在,例如,如果有两个事件。

event1 = event_start is 2014-07-15 08:00:00 am,所以display_time get insert is 2014-07-15 08:45:00 am

event2 = event_start是2014-07-15 16:00:00 pm,所以display_time插入是2014-07-15 16:45:00 pm

在这种情况下,event1应该显示在event2之上,但它没有以这种方式获得。它先显示event2,然后显示event1

我在这里没有看到am或pm的任何用途。由于当前日期是24小时时间格式,请删除额外的am/pm$current_date=date("Y-m-d H:i:s");

event_start字段中存储的内容。行号或其他东西。检查你的上升模式

试试这个

$current_date=date("Y-m-d H:i:s a");
$data=mysql_query("select * from  table where CAST(display_time AS DATETIME) >'".$current_date."' order by event_start asc"); 

根据您传递的日期格式转换列

最新更新