2013-10-07 30 views
0

我需要預定會議室 開始日期和結束日期是日期+時間類型在mysql中 當用戶輸入數據時,值將以這些格式存儲2013-10- 03 14:30:00至2013-10-03 16:30:00(開始和結束日期)以及該房間號碼(例如:2)也會被保存。日期時間比較在mysql和php預定會議

現在假設用戶已經在所有上述情況下再次做出新的條目,與

1)same time and and same booking room (start_date : 2013-10-03 14:30:00 to end_date: 2013-10-03 16:30:00) 
2)different time and same booking room (start_date:2013-10-03 13:30:00 to end_date: 2013-10-03 15:30:00) 
3)different time and same booking room (start_date:2013-10-03 15:30:00 to end_date: 2013-10-03 18:30:00) 

,應該使我錯誤說這個時候是不能作爲其已經被預定。

我做了什麼到現在是:

SELECT * FROM calendar WHERE `Room_no`='2' and (StartTime BETWEEN $start_date AND '$start_date' OR EndTime BETWEEN $start_date AND $end_date) 

感謝advance.i是新來的PHP和mysql.so如果有錯誤,我已經做了,請讓我知道。

+0

有沒有錯誤?問題是什麼? – Steve

+0

我無法理解你的問題。你想一次只有一個人可以預訂房間嗎?這就是你想要的嗎?如果是,http://stackoverflow.com/questions/4163092/how-to-find-results-in-mysql-within-the-specfied-times-range?rq=1#answer-4163132 –

+0

這個我試過了,但是uts nt顯示poper答案。是的bhavik,我想如果那個房間在那個特定的時間被預定,它不應該允許預定那個房間。 – user1556844

回答

0

起初很難知道你確切的問題是什麼。

看看下面的查詢。您在相同變量名稱$ start_date和'$ start_date'之間使用查詢。

SELECT * FROM日曆 WHERE Room_no = '2'
AND(開始時間之間$起始日期和 '$日期') OR

(介於$ start_date和$ END_DATE結束時間),我覺得你有錯誤的SQL。

+0

抱歉發佈錯誤查詢的實例感興趣......它是$ start_date和$ end_date – user1556844

+0

在我的回答中,我沒有發佈查詢作品。我只是顯示查詢中的錯誤。請在評論前先閱讀答案。 – Bhaktaraz