php通过记录IP来防止表单重复提交方法分析


Posted in PHP onDecember 16, 2014

本文实例分析了php通过记录IP来防止表单重复提交方法。分享给大家供大家参考。具体分析如下:

这个原理比较的简单就是用户第一次提交时我们记录提交用户的IP地址,这样如果用户在固定时间内再次提交表单就会提示重复提交了,这种做法通常用于在顶一下,支持一下这种应用中了,在防止数据重复提交是一个非常不好的选择.

例子,代码如下:

<?php 

session_start(); 

if(empty($_SESSION['ip']))//第一次写入操作,判断是否记录了IP地址,以此知道是否要写入数据库 

{ 

$_SESSION['ip']=$_SERVER['REMOTE_ADDR'];//第一次写入,为后面刷新或后退的判断做个铺垫 

mysql_query("INSERT INTO admin(id, name, age) VALUES(123, '姚明', 25)");//写入数据库操作 

}

else//已经有第一次写入后的操作,也就不再写入数据库 

{ 

echo '请不要重复提交表单或刷新页面';//写一些已经写入的提示或其它东西 

} 

?>

还有办法就是:

1:在页面生成随机码,也就是每次提交随机码都不一样,在提交的时候验证随机码!

2:在提交的时候,验证如果数据存在,就不提交了.

如果你想防止重复提交入库IP不是最好的办法,我们可以在数据库中查询是不是有相同记录并且IP是不是想同再进行处理.

例子,代码如下:

$sql ="select * from 表名 where buy_tel='电话' and IP='$ip'   ";// and $time-buy_date<60 

$query = $db->query( $sql ); 

if( $db->rows( $query ) ) 

{ 

echo('<script>alert("您己提交过了,请勿重复提交!");</script>'); 

} 

else 

{ 

//进行入库操作 

}

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
php csv操作类代码
Dec 14 PHP
php simplexmlElement操作xml的命名空间实现代码
Jan 04 PHP
preg_match_all使用心得分享
Jan 31 PHP
CI框架开发新浪微博登录接口源码完整版
May 28 PHP
destoon官方标签大全
Jun 20 PHP
php中使用array_filter()函数过滤空数组的实现代码
Aug 19 PHP
php创建和删除目录函数介绍和递归删除目录函数分享
Nov 18 PHP
PHP 反射(Reflection)使用实例
May 12 PHP
php 数组随机取值的简单实例
May 23 PHP
在PHP 7下安装Swoole与Yar,Yaf的方法教程
Jun 02 PHP
PHP实现打包下载文件的方法示例
Oct 07 PHP
PHP中strval()函数实例用法
Jun 07 PHP
PHP使用glob函数遍历目录或文件夹的方法
Dec 16 #PHP
php批量添加数据与批量更新数据的实现方法
Dec 16 #PHP
php中get_meta_tags()、CURL与user-agent用法分析
Dec 16 #PHP
PHP使用array_multisort对多个数组或多维数组进行排序
Dec 16 #PHP
php使用ereg验证文件上传的方法
Dec 16 #PHP
PHP使用pcntl_fork实现多进程下载图片的方法
Dec 16 #PHP
php中最简单的字符串匹配算法
Dec 16 #PHP
You might like
PHP多态代码实例
2015/06/26 PHP
PHP正则表达式笔记与实例详解
2019/05/09 PHP
编写跨浏览器的javascript代码必备[js多浏览器兼容写法]
2008/10/29 Javascript
比较全的JS checkbox全选、取消全选、删除功能代码
2008/12/19 Javascript
window.open()详解及浏览器兼容性问题示例探讨
2014/05/29 Javascript
js面向对象编程之如何实现方法重载
2014/07/02 Javascript
使用JQuery库提供的扩展功能实现自定义方法
2014/09/09 Javascript
JavaScript中对象property的读取和写入方法介绍
2014/12/30 Javascript
javascript实现rgb颜色转换成16进制格式
2015/07/10 Javascript
微信小程序 template模板详解及实例
2017/02/21 Javascript
bootstrap模态框示例代码分享
2017/05/17 Javascript
微信小程序中input标签详解及简单实例
2017/05/18 Javascript
ExtJs异步无法向外传值和赋值的完美解决办法
2017/06/14 Javascript
jQuery选择器_动力节点Java学院整理
2017/07/05 jQuery
vue mint-ui学习笔记之picker的使用
2017/10/11 Javascript
12条写出高质量JS代码的方法
2018/01/07 Javascript
超好用的jQuery分页插件jpaginate用法示例【附源码下载】
2018/12/06 jQuery
微信小程序实现一个简单swiper代码实例
2019/12/30 Javascript
vue-video-player 解决微信自动全屏播放问题(横竖屏导致样式错乱问题)
2020/02/25 Javascript
基于better-scroll 实现歌词联动功能的代码
2020/05/07 Javascript
[00:35]TI7不朽珍藏III——寒冰飞龙不朽展示
2017/07/15 DOTA
跟老齐学Python之大话题小函数(2)
2014/10/10 Python
Python爬取国外天气预报网站的方法
2015/07/10 Python
解决python2.7 查询mysql时出现中文乱码
2016/10/09 Python
浅述python中argsort()函数的实例用法
2017/03/30 Python
mysql 之通过配置文件链接数据库
2017/08/12 Python
对python操作kafka写入json数据的简单demo分享
2018/12/27 Python
公司道歉信范文
2014/01/09 职场文书
企业道德讲堂实施方案
2014/03/19 职场文书
企业标语口号
2014/06/10 职场文书
常务副县长“三严三实”对照检查材料思想汇报
2014/10/05 职场文书
财务助理岗位职责范本
2014/10/09 职场文书
建筑质检员岗位职责
2015/04/08 职场文书
检举信的写法
2019/04/10 职场文书
java基础——多线程
2021/07/03 Java/Android
Windows Server 2012 R2 磁盘分区教程
2022/04/29 Servers