我是靠谱客的博主 羞涩黄蜂,这篇文章主要介绍php及MySQL避免重复提交数据,现在分享给大家,希望可以做个参考。

php防止数据重复提交:

	//获取来访真实IP
	if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"]){
  		$key = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];
	}elseif($HTTP_SERVER_VARS["HTTP_CLIENT_IP"]){
  		$key = $HTTP_SERVER_VARS["HTTP_CLIENT_IP"];
	}elseif($HTTP_SERVER_VARS["REMOTE_ADDR"]){
  		$key = $HTTP_SERVER_VARS["REMOTE_ADDR"];
	}elseif(getenv("HTTP_X_FORWARDED_FOR")){
  		$key = getenv("HTTP_X_FORWARDED_FOR");
	}elseif (getenv("HTTP_CLIENT_IP")){
  		$key = getenv("HTTP_CLIENT_IP");
	}elseif (getenv("REMOTE_ADDR")){
  		$key = getenv("REMOTE_ADDR");
	}else{
  		$key = "Unknown";
	}
	//防重复提交
	$lifeTime = 3600; 
	session_set_cookie_params($lifeTime); 			//设置session有效期1小时	 
	session_start();
	if(empty($_SESSION['last'])){					//限制相同IP提交
		$_SESSION['last'] = $key;
	}else if($_SESSION['last'] == $key){
		echo "<script>alert('一小时内请勿多次提交!');history.go(-1);</script>"; 
		die();
	}
	if(empty($_SESSION['content']) || $_SESSION['content'] <> $content){	//限制相同内容提交
		$_SESSION['content'] = $content;
	}else if($_SESSION['content'] == $content){
		echo "<script>alert('一小时内请勿重复提交!');history.go(-1);</script>"; 
		die();
	}

mysql写入数据,IGNORE防止相同数据重复插入(如果数据库表中有相同数据就会忽略本条插入数据,执行后返回0):

INSERT IGNORE INTO zice (name,age,sex,tel,content,time) VALUES ('name','age','sex','tel','content','time');					//插入数据

最后

以上就是羞涩黄蜂最近收集整理的关于php及MySQL避免重复提交数据的全部内容,更多相关php及MySQL避免重复提交数据内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(59)

评论列表共有 0 条评论

立即
投稿
返回
顶部