在這段代碼中一切工作正常,它從會話中取用戶名並通過單選按鈕完全插入數據,唯一的問題是它在我重新加載頁面時自動再次插入數據。自動插入數據
if(isset($_SESSION['user_id'])&&isset($_POST['r1'])&&isset($_POST['r2'])&&isset($_POST['r3'])&&isset($_POST['r4'])&&isset($_POST['suggestion'])&&isset($_POST['submit'])){
$user=$_SESSION['user_id'];
$r1=$_POST['r1'];
$r2=$_POST['r2'];
$r3=$_POST['r3'];
$r4=$_POST['r4'];
$suggestion=$_POST['suggestion'];
$query_insert="INSERT INTO `wp_feedback` VALUES ('".$user."','".$r1."','".$r2."','".$r3."','".$r4."','".$suggestion."')";
if($query_run=mysql_query($query_insert)){
echo "alright";
}
else {
echo "not inserted";
}
}
在此先感謝。
當您在插入後重新加載頁面時,瀏覽器會重複POST請求。爲了避免這種行爲,你應該在插入數據庫後將用戶重定向到一個視圖頁面。 – barbashov 2013-04-06 09:09:30
第一次插入時重定向 – 2013-04-06 09:09:53
作爲一個(相當重要的)附註,請閱讀[SQL注入](http://en.wikipedia.org/wiki/SQL_injection#Incorrectly_filtered_escape_characters)。 – 2013-04-06 09:12:18