Jump to content

Archived

This topic is now archived and is closed to further replies.

bpottle

Showing "Open" or "Closed" based on hours in a db?

Recommended Posts

I've got the business hours of several locations that need to be stored in a MySQL database. I'll be using php to display a list of these locations and an image based on whether they are open or closed to indicate such. I figured "hey, this'll be simple," and threw together a table looking something like "sid, sunOpen, sunClose, monOpen, monClose, etc..." planning to simply write a script that got time(); in 24-hour format, checked it against the open and close hours in the database, and display the appropriate image.

...but then I realized that some of the locations are open past midnight on the weekends.

I'm having a real mindblock on this... what would be the most efficient way to do this in a way that accommodates places open into the early hours of the next day?

--Ben

Share this post


Link to post
Share on other sites
This was easy to code, but i've tried half a dozen times to explain what it does and I can't lol it's hard to explain.

Basically...

1. Is the closing time number less than the opening time number?
YES - We're open after midnight.
NO - We're not open after midnight.

2. Compare the time now against the opening time, and then against the closing time. If it falls between them the place is open, if not, it's closed.

Hope this makes sense for you.

[code]

<?php        

if($closing_time<$opening_time)
{        
    if($time_now<$opening_time)
        {
        if($time_now<$closing_time)
            {
            echo "WE'RE OPEN";
            }
        else
            {
            echo "WE'RE CLOSED";
            }
        }
}
else
{
    if($time_now>$opening_time)
        {
        if($time_now<$closing_time)
            {
            echo "WE'RE OPEN";
            }
        else
            {
            echo "WE'RE CLOSED";
            }
        }
}

?>
[/code]

Share this post


Link to post
Share on other sites
[!--quoteo(post=364337:date=Apr 13 2006, 06:06 AM:name=wisewood)--][div class=\'quotetop\']QUOTE(wisewood @ Apr 13 2006, 06:06 AM) [snapback]364337[/snapback][/div][div class=\'quotemain\'][!--quotec--]
This was easy to code, but i've tried half a dozen times to explain what it does and I can't lol it's hard to explain.

*snip*
[/quote]

Aha! It makes perfect sense! Thanks for your help, this is exactly what I was trying to do :-D

--Ben

Share this post


Link to post
Share on other sites
happy to help.

I'll probably use it myself at some point.

Share this post


Link to post
Share on other sites

×

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.