防止重複使用php會議的形式提議
我們有被看見在警告有些的網站上的那些消息的所有不不止一次點擊按鈕或消極後果,像兩次付帐单,也许发生。 有时我們可以通过擊中後面造成這些問題或刷新按鈕。 在這篇文章上我將解釋方法學,藉以站點可能保證只一次遞交,從而显示出的每個形式这样警告是多餘,并且,根据被引起的問題的本质,值得直接修理。 我們通过看一看開始在我們學習的過程: 形成提議。 一样賣弄學問,象它也许似乎,詳述其中每一步在這個過程中將是值得的: 訪客請求從有对此的一個形式的服務器的頁。服務器檢索形式并且送到用戶。用戶输入關於形式的數據并且遞交給服務器。服务器进程形成數據和回歸結果頁。 我們現在需要分析的情景是用戶再觸發一個早先形式提議過程。 什麼我們需要發現或創造是改變在形式提議過程期間不取决于遞交的具體形式,并且我們可以告訴改變的事。 那是充分地詳述我們的解答的一個被裝載的句子,因此我們打破它擊倒。 發現或創造的事 在形式提議過程期間的變動,不取决于遞交的具體形式,和我們可以告訴改變。
因为改變的項目不取决于遞交的形式(即没关系,如果它是時事通訊登记表、顧客簽約形式、付款形式等等),項目不是已經存在并且必须創造的事,因此我們創造形式易變的叫的submissionId,并且假設它有以上提到的3物產。 到目前为止,很好 -- 或者如此看起来! 第三「物產」是「我們可以告訴[它]改變」,但是「改變」不是可變物的物產,因此我們需要仔细地看這。 為了告诉被改變的某事,我們必须有参考点,對從什麼「改變的問題的一個回答?」 這是會議可變物將開始活動的地方。 如果我們定义了會議可變物,說$_SESSION [『nextValidSubmission』]并且對待它作为参考点,我們將有必要所有的工具保護我們的訪客。 每次它被派出给用戶,想法將是保留會議易變更新與被派出的最后submissionId和改變submissionId。 然后,如果他們设法再傳送數據,他們遞交不匹配nextValidSubmission的一老submissionId,并且我們將知道不再加工這數據。 我們看此根據過程: 訪客請求從有对此的一個形式的服務器的頁。服務器檢索形式,引起被埋置入形式,更新nextValidSubmission,并且送到用戶的一新的submissionId。用戶输入關於形式的數據并且遞交給服務器。服务器进程形成數據、變動nextValidSubmission和回歸結果頁。 现在,如果訪客莫名其妙地再寄數據,他們送不會匹配新的nextValidSubmission的老submissionId。 因此,您能嚮Java語言去除或使按鈕、傻的报警信息和翻倒顧客失去能力的依靠現在說再見通过防止形式重新提交。
劇本參考的Web站點管理員-非程序員的*NEW* PHP參考&講解站點
使用PHP,為详细信息、例子和不要求會議的一個交错法看見這裡。
文章來源: Messaggiamo.Com
Related:
» Seo Elite: New Seo Software!
» AntiSpywareBOT
» Reverse Mobile
» Error Nuker
網管得到HTML代碼
加上這條到你的網站!
網站管理員提交你的文章
無須登記!填寫好的表格和你的文章是在 Messaggiamo.Com 目錄!
版權 2006-2011 Messaggiamo.Com -
網站地圖 -
Privacy -
網站管理員提交你的文章,以 Messaggiamo.Com 目錄 [0.01]