栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP

php防止刷新重复提交

PHP 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

php防止刷新重复提交

1、F5 刷新

2、Ctrl+F5 刷新

3、“转至”或地址栏里回车刷新

这些快捷键的功能,主流浏览器都是相同的。

而这三种刷新方式会导致浏览器采取不同的缓存机制:

F5:不允许浏览器直接使用本地缓存,因此Last-Modified能起作用,但Expires无效

Ctrl+F5:是强制刷新,因此缓存机制失效

“转至”或地址栏里回车:正常的访问,Last-Modified和Expires都有效

总结:

浏览器在刷新时,把上一次的post参数给记忆下来并重新传递给了服务器,不管在这个过程中你是否做什么样的改动,他一概不予理会,而是忠实的把上一次所有POST的参数原封不动的重新发送给服务器

 php防止刷新页面重复提交

  作为phper,我们在开发和学习php过程中,难免要经常的接受处理表单数据,然而处理表单的时候总会有一个问题,困扰大家,刷新页面重复提交的问题。如何防止刷新页面重复提交呢?

  其实在php学习中我们会有很多的方法,比如最简单的,我们可以采用,提交成功后,进行跳转的方法。但是这样做,有时候,会有很多瓶颈,比如,如果我们的页面有很多内容需要加载,尤其是很多跟后台打交道,这样如果跳转重新加载页面的话,可能会对服务器造成压力。这里我们可以采用另外一种方法,来防止刷新页面重复提交,以便大家更好的学习php。

  我们可以利用session来解决。我们首先新建一个session,并赋值,第一次提交后改变session的值,当第二次再此提交此内容时,如果不是我们的赋值,就不在处理传过来的数据。

如:

session_start();

$_SESSION['num'] = 0;

if(isset($_POST['action'] &&$_POST['action']=='submit')){

if($_SESSION['num'] == 0){

 echo ''请再次尝试;'

 $_SESSION['num'] = 1;

}else{

 echo '您已经提交过了,请不要重复提交';

 }

}

?>

前台页面没有给出,相信大家都明白前面该怎么写。其实诸如防止刷新页面重复提交的方法,还有很多,在以后php学习交流中,还会更多的列举出来。


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/227399.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号