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 相关文章推荐
第八节--访问方式
Nov 16 PHP
通过5个php实例细致说明传值与传引用的区别
Aug 08 PHP
探讨GDFONTPATH能否被winxp下的php支持
Jun 21 PHP
PHP检测移动设备类mobile detection使用实例
Apr 14 PHP
php网站被挂木马后的修复方法总结
Nov 06 PHP
PHP异常处理浅析
May 12 PHP
浅析PHP中call user func()函数及如何使用call user func调用自定义函数
Nov 05 PHP
PHP中for循环与foreach的区别
Mar 06 PHP
php 读写json文件及修改json的方法
Mar 07 PHP
PHP学习笔记之session
May 06 PHP
laravel批量生成假数据的方法
Oct 09 PHP
php+mysql+ajax 局部刷新点赞/取消点赞功能(每个账号只点赞一次)
Jul 24 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
造就帕卡马拉的帕卡斯是怎么被发现的
2021/03/03 咖啡文化
PHP和XSS跨站攻击的防范
2007/04/17 PHP
让PHP支持页面回退的两种方法
2008/01/10 PHP
PHPLog php 程序调试追踪工具
2009/09/09 PHP
PHP中SimpleXML函数用法分析
2014/11/26 PHP
PHP对文件进行加锁、解锁实例
2015/01/23 PHP
PHP中常见的缓存技术实例分析
2015/09/23 PHP
PHP中的switch语句的用法实例详解
2015/10/21 PHP
php的laravel框架快速集成微信登录的方法
2016/12/12 PHP
详解Laravel设置多态关系模型别名的方式
2019/10/17 PHP
用CSS+JS实现的进度条效果效果
2007/06/05 Javascript
JavaScript 版本自动生成文章摘要
2008/07/23 Javascript
javascript中普通函数的使用介绍
2013/12/19 Javascript
JavaScript获取网页、浏览器、屏幕高度和宽度汇总
2014/12/18 Javascript
JS实现文档加载完成后执行代码
2015/07/09 Javascript
jQuery自定义数值抽奖活动代码
2016/06/11 Javascript
VUEJS实战之利用laypage插件实现分页(3)
2016/06/13 Javascript
jQuery基于BootStrap样式实现无限极地区联动
2016/08/26 Javascript
基于JS实现类似支付宝支付密码输入框
2016/09/02 Javascript
Bootstrap 3的box-sizing样式导致UEditor控件的图片无法正常缩放的解决方案
2016/09/15 Javascript
基于angular中的重要指令详解($eval,$parse和$compile)
2016/10/21 Javascript
安装vue-cli报错 -4058 的解决方法
2017/10/19 Javascript
vue 实现类似淘宝星级评分的示例
2018/03/01 Javascript
简单分析Python中用fork()函数生成的子进程
2015/05/04 Python
Python实现SSH远程登陆,并执行命令的方法(分享)
2017/05/08 Python
Python Web框架之Django框架文件上传功能详解
2019/08/16 Python
Django 多对多字段的更新和插入数据实例
2020/03/31 Python
巴西最大的体育用品商城:Netshoes巴西
2016/11/29 全球购物
美国在线医疗分销商:MedEx Supply
2020/02/04 全球购物
旅游业大学生创业计划书
2014/01/31 职场文书
《胖乎乎的小手》教学反思
2014/02/26 职场文书
求职信名称怎么写
2014/05/26 职场文书
项目转让协议书
2014/10/27 职场文书
2015年乡镇残联工作总结
2015/05/13 职场文书
保护环境建议书作文300字
2015/09/14 职场文书
redis 查看所有的key方式
2021/05/07 Redis