2017-07-27 14 views
-1

我有一個按鈕。人們可以從他們的系統訪問該按鈕。我想要的是:假設2個人同時點擊同一個按鈕,只有1個應該能夠訪問點擊按鈕後加載的內容。防止在多用戶環境中同時點擊相同的按鈕

但現在發生的情況是,如果2個用戶同時點擊同一個按鈕,兩個用戶都可以訪問點擊按鈕後加載的頁面。

我想只有一個人可以訪問該按鈕,即使2個人同時點擊它。

+1

*「我想要的是假設2個人同時點擊同一個按鈕」*您的前提無效。每個查看您的頁面的人都將查看在他們自己的系統上本地運行的單獨頁面。永遠不會有一個每個人都分享的按鈕。 –

+0

完成此類事情的唯一方法是將按鈕的單擊事件設置爲調用服務器端資源,然後該服務器端資源將記錄它已被訪問,以便對該資源的任何其他請求都不會處理。即使在這種情況下,也不保證第一個點擊他們按鈕的人會得到正確的迴應,因爲您將受到每個用戶網絡速度的束縛。 –

+0

歡迎來到StackOverflow。我認爲你可能對web應用程序不熟悉,並且在系統和桌面應用程序之間混淆了系統行爲。在發佈任何內容之前(如果您仍然需要詢問),請查看[如何提出一個好問題](https://stackoverflow.com/help/how-to-ask)部分,提供一些代碼以及內容你已經嘗試過了。 –

回答

0

儘管所有的負面評論,這個問題有一個非常有效的理由和答案;但是,它通常會涉及添加服務器端腳本和數據庫(如PHP/mySQL或ASP.NET/SQL)來處理此行爲。

您的按鈕將需要發佈到您的服務器端腳本,該腳本將翻轉數據庫中的變量以表明該頁面正在使用中。然後,當收到下一個請求時,腳本將讀取該變量並執行不傳遞內容的異常。由於數據線程工作的方式,服務器將始終選擇一個先運行,然後另一個運行,即使兩個請求都在相同的時鐘週期內收到;所以,你永遠不會讓他們都打開頁面。

相關問題