2016-05-10 55 views
0

因此,我通过在我的Index.php中执行查询从我的PostgreSQL数据中获取数据。该查询将获取公交车站名称的名称及其到达的相应时间。我想让我的应用程序执行的操作是根据当前时间为特定的公交车站提取时间。基于当前时间从数据库获取数据PHP

我的查询如下:

$query = " SELECT busname, bustime 
       From busses 
      where name = '$name' and time ='$time' LIMIT 5"; 

我需要做的东西在我的查询实现这一目标或在我的数据库?

+0

$ query =“SELECT busname,bustime From busses where name ='$ name'and time <= NOW()LIMIT 5”; –

+0

这似乎会导致一个错误: 查询失败:错误:运算符不存在:带时区的时间> =带时区的时间戳线4:... mesDyke'和dt2.name ='CitySquare'和dt1。 time> = NOW()a ... ^提示:没有操作符匹配给定的名称和参数类型。您可能需要添加显式类型转换。 @NIRANJANS。 – bronxdeveloper

回答

0

如果你是以当前时间为基础的话,那么你绝对不会希望time ='$ time',因为如果你恰好在毫秒级的确切时间查询,这只会响起。

假设你是想根据目前的时间让所有(或接近)次,公共汽车站,然后尝试:

$query = " SELECT busname, bustime 
      From busses 
      WHERE name = '$name' 
      AND time >= '$time' 
      ORDER BY time ASC 
      LIMIT 5"; 

这会给你任何时候当前时间之后再由ASC订货会给最近的时间第一次,限制5,然后只返回接下来的5个公交时间。

+0

我曾试过,但它不会根据当前时间获取数据。我的$ time变量是$ time = $ _POST ['time']; //时间。我应该在哪里做出改变@Matt – bronxdeveloper

+0

@bronxdeveloper你如何发布时间?你使用DateTime吗?例如'$ time = new DateTime();'然后发布它? – Matt

+0

我的时间是$ time = $ _POST ['time']; //用户发送的输入内容。我应该将其更改为$ time = new DateTime(); ? @马特 – bronxdeveloper

相关问题