2009-09-20 85 views
0

我正在爲我的學校創建一個可讓教師預訂房間/車輛的日程安排系統。我只是停留在一個方面:填充日曆。基本上它會有一個月和一週的觀點。每月視圖我很好編碼,但它是我堅持的每週視圖。填寫日程安排日曆

插入預訂的人將能夠指定預訂的日期以及佔用的當天的時間段。我可以通過一週中的天/塊來緩解這些日子的問題,並查看當時是否預訂了某些東西,但這樣做效率太低。

我的第二個想法是獲得一週的第一天和最後一天的時間戳,然後用所有這些日期填充關聯數組。然後,我可以通過所有日子的塊進行遞歸併查找數組中的所有匹配項。這有點更好,但對我來說似乎仍然效率低下。

有沒有更好的方法來做到這一點?

+0

您使用的數據庫?你爲什麼不直接查詢在開始日期時間排序的那一週中的所有事件?我沒有看到更有效的做法。你的項目是否包括復發? – RageZ

+0

是的,使用數據庫,是的,它需要重複。 而且我不能簡單地列出事件。它需要分段顯示(每天有6個塊),並且如果安排了一個塊,他們將無法在該塊中安排任何內容。 – BraedenP

回答

1

您可以使用快速日曆,它非常簡單,只需將SQL查詢傳遞給它即可,它將按預期工作。

檢查本教程

http://www.evolt.org/quick_calendar_using_ajax_and_php

+0

他們最終在日曆中需要一些更多的自定義功能,但我使用該網站上的數學作爲計算開始日期的基礎等。非常感謝! – BraedenP

1

選擇在活動周的開始和結束日期之間或之間發生的所有事件,將結果放入數組中,然後循環查看週中的日期,並檢查數組中的事件是否發生在活躍的一天。

+0

是的,這是我在問題中提出的選項之一。它會很有效嗎?它會有不少用戶在任何時候使用它。 – BraedenP

+0

它可能會有足夠的效率,因爲您的數據集和循環的時間量都很小。 對代碼進行每次更新時,靜態緩存/生成內容可能比代碼微優化更適合您。 – AvatarKava