2015-11-29 71 views
0

當前我正在使用html time picker,但不介意使用Javascript/Jquery/Ajax代替。我試圖解決的問題是這樣的:從mysql中禁用時間選擇器

您是客戶,您從員工訂購了x。 x有一個持續時間(start_time - end_time)。時間表數據保存在$customer_time。請注意,我必須將日期存儲爲varchar。但我的問題不是日期,而是時間。

SQL查詢我已經是這個(放心大膽地,如果更好的你能)

SELECT employee_id, product_start_time, product_end_time, date FROM orders 
WHERE NOT (
     employee_id ='$employee_id' 
    AND res_date = '$res_date' 
    AND $customer_time =TIMEDIFF ('product_start_time','product_end_time') 

) 

我想我寫的timeDiff測量正確的,如果不是請改正它,因爲我從來沒有使用過它,在想法是

$customer_time = start_time - end_time

總之,如果員工是免費的,那麼客戶可以通過預約進行,否則,time_選擇器領域應該被禁用。我需要一個像html一樣的時間選擇器,但我可以使用並禁用時間。我不想要一個時間選擇器,我從間隔列表中選擇默認時間。

所以請

  • 檢查我的MySQL查詢是正確的
  • 推薦時間選擇
  • 一個例子注入高度讚賞

更新

也許我的查詢的更好的版本是給我們的e INTERVAL而不是timediff,因爲每個產品都有幾分鐘的持續時間,很少有持續時間以小時爲單位,但大多數是分鐘。

我最初的想法是創建一個時間字段,不斷檢查可用性,就像檢查可用的用戶名一樣,在使用ajax的用戶名字段中,不知道是否會起作用。

+0

我希望能有禁用值的時間選擇器輸入字段。所以如果用戶x選擇了一段時間,用戶y不能選擇同一時間 但不是下拉選擇列表,我想輸入字段 – Lynob

+0

我的問題的其餘部分正在討論我的sql查詢 – Lynob

+0

請注意,我會給予接受的答案至少50代表,如果他實現了一個解決方案或幫助與SQL,這就是爲什麼我的問題似乎廣泛,可能會給多個用戶的賞金,這取決於答案這個問題對我來說是非常重要的 – Lynob

回答

2

@Lynob這裏是禁用時間的timepicker。你需要把更多的時間放在被禁用的數組中,它會起作用。

var input = $('#input-a'); 
var dissabledTime = ["11:00", "12:00", "13:00", "14:00"]; 
input.clockpicker({ 
autoclose: true, 
afterDone: function() { 
    console.log(dissabledTime.indexOf($('#input-a').val())); 
         if(dissabledTime.indexOf($('#input-a').val()) != -1) 
         { 
          alert("My dear select other time i'm busy :)"); 
          $('#input-a').val(''); 
         } 
        }, 
}); 

這裏是整個fiddle

問候,

喬治

0

從你試圖說的內容假設:

將選定的日期以日期格式存儲到mysql。查詢時,請檢查每個用戶選擇的日期或您希望如何執行此操作。然後以這種方式進行。

這將是每個會話。您必須將結果存儲在數組中:

var disableddates = ["02-14-2015", "05-19-2013", "12-20-2014", "another one"]; 


function DisableSpecificDates(date) { 
    var string = jQuery.datepicker.formatDate('dd-mm-yy', date); 
    return [disableddates.indexOf(string) == -1]; 
    } 

您必須稍後調用datepicker函數。

​​

你必須包括jquery datepicker插件和依賴關係。

+0

我的問題是不是日期,現在是時候。 \t 我想要一個可以禁用值的時間選擇器輸入字段。所以如果用戶x選擇了一段時間,用戶y不能選擇同一時間但不下拉選擇列表,我想要一個輸入字段 – Lynob

+0

輸入字段如?你想顯示datepicker這樣的timepicker或者一個空的字段,用戶可以手動輸入時間嗎?因爲這對用戶界面不好,因爲如果你不給他們選擇,用戶必須知道什麼以及如何編寫格式。 – marukobotto

+0

是的,但可以像彈出有分鐘和他不能選擇一個禁用的範圍,例如,我選擇上午11點,然後我不能選擇15至30分鐘因爲別人有保留從11 15至11 30 – Lynob