避免 "回到上一步" 的方法,就是不去紀錄瀏覽的紀錄,使瀏覽器無法回到上一步。
這兩個預防對策可以在一個指令同時完成,那就是 location.replace() ,使用方式就是在表單送出後,接收資料的頁面在處理完資料後,就利用 location.replace() 去轉頁,這樣可以避免重覆執行的問題了,範例如下:
if($_POST['action'] == 'add'){
//執行資料新增 (略)
echo '<script>alert("新增成功");</script>';
echo '<script>location.replace("index.php");</script>';
exit();
}
備註:如果想在原本頁面使用replace重新整理,可以使用下列語法
echo '<script>location.replace(location.href);</script>';
備註:如果用 location.href 去轉頁 使用者仍可回到上一步,所以不建議使用。
No comments:
Post a Comment