Re: Calendar Logic Help

From: Date: Wed, 20 Oct 2010 17:44:24 +0000
Subject: Re: Calendar Logic Help
References: 1 2  Groups: php.general 
Request: Send a blank email to php-general+get-308892@lists.php.net to get a copy of this message
On Oct 20, 2010, at 12:47 PM, Tommy Pham wrote: >> -----Original Message----- >> From: Floyd Resler [mailto:fresler@adex-intl.com] >> Sent: Wednesday, October 20, 2010 9:17 AM >> To: PHP >> Subject: [PHP] Calendar Logic Help >> >> I'm having problems getting my head around some login for a calendar. >> Specifically, the problem is drawing weekly views for events that span >> multiple days. I've gotten it so that if an event starts in the week > being >> viewed, the days draw correctly for the remainder of the week. However, > if >> the event goes into the next week, its start date is now outside my date >> range and so it doesn't display. I know how to say the logic, I'm not > sure >> how to write it! The logic would be: if any date between the start and > end >> dates of the event are within the week being displayed, show the event. > I'd >> like to put the logic into my MySQL query so I don't have to get all > events >> from the calendar to see what should be displayed. Any ideas? >> >> Thanks! >> Floyd >> > > It's hard to give you hints without knowing some actual PHP code and SQL > table columns but here goes: > > PHP logic: $event['startDate'] <= $weekEnd && $event['endDate'] > >= > $weekStart > > Query logic: SELECT * FROM event_table WHERE start_date <= > @weekEnd and > end_date >= @weekStart > > week* is the week being viewed. You may have to use the DateTime class or > one of the date_* functions to compare the date for the PHP logic. @ is the > input query parameter. This assumes you have table columns for the event: > start_date & end_date. Adjust the query as needed for multi table joins. > > Regards, > Tommy > That worked perfect! Thanks! Floyd

« previous php.general (#308892) next »