在Web 應用程式中,解決表單提交後由於頁面刷新而導致意外數據重複的常見問題至關重要。當表單提交執行資料庫插入等操作時,隨後的刷新會導致不必要的資料冗餘,就會出現此問題。
要解決此問題,最佳實踐不要在同一頁上顯示回應提交後。相反,操作完成後將使用者重新導向到另一個頁面。
考慮問題中提供的範例程式碼:
<?php if (isset($_POST['name'])) { // Database operation (e.g., inserting $_POST['name']) echo "Operation Done"; die(); } ?>
在這種情況下,當您提交表單,資料插入資料庫中,使用者會看到訊息“操作完成” 。但是,如果此後刷新頁面,表單提交程式碼將再次運行,可能會導致重複資料插入。
為了避免此問題,請考慮修改以下程式碼:
<?php if (isset($_POST['name'])) { // Database operation (e.g., inserting $_POST['name']) // Set a success flash message (assuming you're using a framework) header('Location: /path/to/record'); exit; } ?>
重點:
以上是如何防止Web應用程式中頁面刷新時意外重新提交?的詳細內容。更多資訊請關注PHP中文網其他相關文章!