> -----Original Message----- > From: Floyd Resler [mailto:fresler@xxxxxxxxxxxxx] > Sent: Wednesday, October 20, 2010 9:17 AM > To: PHP > Subject: 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 -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php