簡體   English   中英

防止兩次執行php腳本

[英]Prevent executing php script twice

也許有人問過這個問題。 但是找不到任何解決方案,因此我自己發布了此信息。

由於瀏覽器掛起或網絡速度過快,我需要防止多次執行php腳本(codeigniter)。 因此,它為單個數據創建了多個條目,日期時間差為1-2分鍾。

卡在這附近。 需要解決方案。 任何幫助將不勝感激!

簡單的解決方案-使用表單鍵。 每次渲染表單時,請創建一個隨機的唯一字符串,並將其作為隱藏字段附加到表單中。 除此之外,將此密鑰存儲在帶有時間戳的表中。 如果需要,您還可以將該條目與當前用戶相關聯。

用戶發布表單后,您只需要檢查表中是否存在鍵並將其刪除。 如果密鑰不存在-顯示某種錯誤消息。

這種方法的好處還在於,可以防止csrf攻擊。

如果您不想使用表,也可以將formkey存儲在users會話中,但是如果您想同時支持帶有表單的多個打開的瀏覽器窗口,則這樣做會導致額外的工作。

還使用cookie內置了csrf。 您只需要啟用它( $config['csrf_protection'] = TRUE; ),然后使用form_open創建您的表單

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM