簡體   English   中英

php - 如何防止頁面加載/刷新時自動提交表單?

[英]php - How to prevent auto form submit when page is loaded/refereshed?

我正在為我的 class 創建一個需要學生出勤的項目。 我正在使用<input readonly type="date"><input readonly type="time">獲取出勤日期和時間,並使用 JavaScript 在這些輸入上顯示當前日期和時間,以防止學生作弊。

當頁面被第一手加載和/或重新加載時,如何防止我的表單自動提交和插入數據到數據庫?

 <?php require_once './dba.php'; $status = ""; if(isset($_POST['submit'])) { $dt = $_POST['dt']; $time = $_POST['time']; $query = "INSERT INTO nameOfTable (date, time) VALUES ('$dt', '$time')"; $d = $conn->prepare($query); $d->execute(); } else { $status = "Failed;"? } ?>

當您將數據提交到后端時,您需要將用戶重定向回原始頁面。

提交后,用戶將在 /create 頁面中,並在每次重新加載時發送相同的數據。 因此,在您在數據庫中創建條目后,您需要將用戶重定向回例如“/”,這樣他就不會意外重新提交。 只讀字段不會讓您免於作弊學生;)

<form action='/create.php'>
...
</form>

在你 php 腳本的最后。

// replace with the url of the original submit page.
header("Location: https://example.com/");

暫無
暫無

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

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