亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

php防止刷新重復提交

標簽:
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的值,当第二次再此提交此内容时,如果不是我们的赋值,就不在处理传过来的数据。

如:

<?php

session_start();

$_SESSION['num'] = 0;

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

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

 echo '<a href="'.$_SERVER['PHP_SELF'].'">'请再次尝试</a>;'

 $_SESSION['num'] = 1;

}else{

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

 }

}

?>

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


點擊查看更多內容
1人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消