我有我自己的MVC應用程序,我有3個主要區域:模型,視圖,控制器。如何使用PHP檢查多個表單提交?
在視圖中,我創建了一個表單,將一些數據插入到數據庫中。該操作設置爲同一頁面,類型爲:POST。
在模型中,如果表單已提交或不提交,我會進行一些基本檢查。之後有一秒睡眠。
在控制器中,我以非常簡單的方式連接視圖和模型,以便它們可以相互通信。
但是,只要訪問者在提交按鈕上多次點擊,就會出現問題。因爲等待1秒(這是故意的 - 所以它像系統正在處理數據一樣),他們可以多次點擊按鈕。
存在一個問題,因爲這樣,數據將根據點擊量插入到數據庫中。如果我輸出一個簡單的單詞,如「Foo」,它將只顯示一次(我猜這是因爲每次都重新加載頁面),但數據會多次插入到數據庫中。
有沒有解決此問題的方法?我的意圖是創建一個會話,並檢查這是否是第一次提交,否則什麼都不做。但是這不起作用,因爲會話總是在頁面加載時獲得基本的值。
任何人都可以幫助我解決這個問題嗎?
如果您在插入之前檢查記錄是否插入,該怎麼辦?或者更好 - 創建一個獨特的約束來防止重複? – zerkms 2014-09-27 22:47:25
我試圖運行一個檢查fr唯一性的查詢,但它似乎毫無價值。好像頁面在檢查之前插入了所有內容,即使它存在。不過,如果沒有這樣的記錄,我只能將其放入插入條件中。我想,不知何故,它檢查一次,如果它存在,然後插入多次 - 不知何故插入堆積起來。 – 2014-09-27 22:51:01
最簡單的方法是使用一些簡單的javascript在前端處理它。 – Eugene 2014-09-27 22:54:35