怎样防止页面刷新时,再次提交上次数据?

怎样防止页面刷新时,再次提交上次数据


阿波罗的战车
浏览 1263回答 6
6回答

一只斗牛犬

1、用 javascript 设置一个变量,只允许提交一次;参考如下:<script type="text/javascript">var checkSubmitFlg = false;function checkSubmit(){if (checkSubmitFlg == true){return false;}checkSubmitFlg = true;return true;}document.ondblclick =function docondblclick(){window.event.returnValue = false;}document.onclick =function doconclick(){if (checkSubmitFlg){window.event.returnValue = false;}}</script><form action="action.php" method="post" onsubmit="return checkSubmit();">用 javascript 将提交按钮或者 img 置为 disable;参考如下:<form action="action.php" method="post" onsubmit="getElById('submitInput').disabled = true;return true;"> <img styleId="submitInput" src="images/ok_b.gif" border="0" /></form>

杨魅力

可以采用ajax配合使用php可以防止刷新页面重复提交也可以使用框架同样可以防止你直接访问数据处理页面的时候,$_POST['title'],$_POST['num] 应该是空值,所以你增加一个判断,必须有具体的值,再进行sql操作。

GCT1015

你直接访问数据处理页面的时候,$_POST['title'],$_POST['num] 应该是空值,所以你增加一个判断,必须有具体的值,再进行sql操作。

犯罪嫌疑人X

就是当用户提交表单之后,用js弹出一个框,已成功提交,echo "<script>alert('已成功提交')</script>";然后用php的header或者js跳转到提交页面header("location:$post");

慕田峪4524236

用ajax来实现,这样地址栏会停留在localhost/add.php, 但是会提交到localhost/handle.php做数据库操作。
打开App,查看更多内容
随时随地看视频慕课网APP