Stack User
Stack User

Reputation: 309

Get closest time to current time php

I have table like this:

Database Image

Assume current date and time is 2016-07-14 23:43:00.

Question is I need to get next time after the current time. But it should be within the day. (2016-07-14 not 2016-07-15)

Time will be user input so cant call it with ID.

Example: if I add the code it will gives me 2016-07-14 23:45:00.

Is there any way to achieve this? I have no idea about this. Please help me.

I use query like this for now. SELECT * FROM video WHERE datetime > '$now' ORDER BY datetime LIMIT 1.

Upvotes: 0

Views: 365

Answers (2)

Uueerdo
Uueerdo

Reputation: 15951

You should just need to calculate the start of the next day, and take values less than it.

SELECT * FROM video 
WHERE datetime > '$now'
   AND datetime < CAST(DATE('$now') + INTERVAL 1 DAY AS DATETIME)
ORDER BY datetime 
LIMIT 1

Upvotes: 1

Mirdrack
Mirdrack

Reputation: 790

Use the same query but with limit 2

And You could use http://carbon.nesbot.com/docs/ to handle your dates on PHP in a fancy way

Check out your documentation

Upvotes: 0

Related Questions