Jump to content

[SOLVED] Can't get simple MySQL query (with multile conditions) to work


Recommended Posts

$query = "SELECT * FROM schedule WHERE day = '$current_day' AND show_start <= '$current_time' AND show_end > '$current_time' or '00:00:00' ORDER BY show_start ASC LIMIT 1";

 

I think its the "or" that is messing me up.

I'm trying to get it to find the currently running program.

That would be the program scheduled for the current day, starts at a time prior or equal to the current time, ends and a time after the current time or at 00:00:00.

Hi

 

Try this:-

 

$query = "SELECT * FROM schedule WHERE day = '$current_day' AND show_start <= '$current_time' AND (show_end > '$current_time' or show_end > '00:00:00') ORDER BY show_start ASC LIMIT 1";

 

With the or you need to force the order than things are evaluated in . Also you need to specify what you are checking with in the last check (I suspect you might mean show_end = '00:00:00' though).

 

All the best

 

Keith

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.