下载鸥 > 网站下载 > 开发教程 > PHP

PHP限制同IP一天访问次数方法

249 2021-01-02 00:58:10

收藏

简述

现在网络攻击非常严重,作为一个合格的程序员必须懂得如何处理网站安全问题,比如一个API接口如果不处理,可能会被不良人员恶意调用,占用服务器资源。

现在网络攻击非常严重,作为一个合格的程序员必须懂得如何处理网站安全问题,比如一个API接口如果不处理,可能会被不良人员恶意调用,占用服务器资源。

这里精准像素分享一个简单的PHP限制同IP一天访问次数方法,适合不太懂程序的朋友使用,但是不是非常完全,但肯定可以给不法人员带来限制。

简单的PHP限制访问次数

$t = strtotime(date('Y-m-d 23:59:59'));
if(! isset($_COOKIE['frequency'])) {
  setcookie('frequency', 1, $t);
} else {
  if($_COOKIE['frequency'] >= 5) exit( '<script>alert("每天只能免费使用5次")</script>'); 
  setcookie('frequency', $_COOKIE['frequency']+1, $t);
}

IP+COOKIE的方法,本地判断处理限制方法,但可以通过清楚浏览器COOKIE或禁止COOKIE来绕过。

下面的方法为写入用户IP来判断的方法,服务端判断处理限制方法。

if(isset($_POST['sub'])){
$answer=$_POST['answer'];
if(!empty($answer)){
     require("conn.php"); // 引入数据库文件
     // 获取客户端IP
     $ip=$_SERVER['REMOTE_ADDR'];
     $insertsql="insert into user(ip,svote)values('$ip','$answer')";
   $selectsql="select * from user whereip='$ip'";
     $value=mysql_query($selectsql);
     if(mysql_num_rows($value)==0){  //如果该IP还未投过票
        $result=mysql_query($insertsql); // 执行插入
         if($result){
              echo "<script>alert('投票成功!');</script>";
         }else{
            echo "<script>alert('投票失败!');</script>";
         }
  
     }else{
        echo "<script>alert('您已经投过票了!');</script>";
     }
}else{
echo"<script>alert('您还没有进行选择!');</script>";
}
echo"<br/>";

 

本文地址:https://xzo.com.cn/develop/php/523.html

有帮助,很赞!

信息来源:精准像素
信息标签
导出教程 下载word版教程
发表评论 共有条评论
关于PHP

PHP是一种服务器端、跨平台、html嵌入式的脚本语言,其功能十分强大、入门简单。在过去,民间一直有说法称“PHP是最好的编程语言”,是PHP开发者对自身所使用语言的肯定。

PHP曾是最主流的网站web开发语言之一,现在也依然十分流行。

推荐PHP开发教程
PHP怎样正则匹配段落里的图片并提取图片链接?
PHP怎样正则匹配段落里的图片并提取图片链接?

在程序开发的过程中,我们可能需要提取段落里的图片用作缩略图。那么,这个正则...

19 823
str_replace怎样一次性替换多个值(数组)?
str_replace怎样一次性替换多个值(数组)?

我们知道,str_replace是可以执行替换命令的,但一般是用于一对一替换,这个很好...

1 320
宝塔Nginx免费防火墙提示post参数(post_max_size)值长度超过20w已被系统拦截怎么办?
宝塔Nginx免费防火墙提示post参数(post_max_size)值长度超过20w已被系统拦截怎么办?

页面提交post请求后被宝塔防火墙拦截,查看日志显示错误:参数值长度超过20w已...

1 418
php怎样开启debug调试模式?
php怎样开启debug调试模式?

我们使用php开发网站的时候,经常会需要调试确保功能正常。而如果功能出现异...

0 494
php分割中文字符源码分享与可行性分析
php分割中文字符源码分享与可行性分析

php分割中文字符,之前计划的是可用于搜索结果、tag结果关键词标红。但在实际...

0 293
php常用基础函数isset()介绍
php常用基础函数isset()介绍

isset() 函数用于检测变量是否已设置并且非 NULL。如果已经使用 unset() 释...

0 276
php正则提取字符串中的数字并打印输出
php正则提取字符串中的数字并打印输出

我们在网站开发的过程中经常需要处理数据,今天讲讲怎样用正则提取字符串中的...

0 296
PHP基础函数介绍:PHP_EOL
PHP基础函数介绍:PHP_EOL

PHP_EOL是一个相当好用的函数,可自动适配多种换行格式,在实际的应用中体验非...

0 377
随机PHP开发教程
PHP禁止频繁刷新方法
PHP禁止频繁刷新方法

PHP禁止同一IP频繁访问以防止网站被攻击或采集的代码,可以参考代码自己建立...

12 304
PHP获取用户真实IP方法
PHP获取用户真实IP方法

来自大佬精准像素分享自用的两种获取用户IP方法,复制就可以使用,方便新手小白...

0 908
PHP获取城市天气API接口源码
PHP获取城市天气API接口源码

PHP获取城市天气API接口源码,接口调用的是微鲤的接口,2020年9月1日 10:11:07...

3 908
PHP获取网站TDK标题API接口源码
PHP获取网站TDK标题API接口源码

PHP获取网站TDK标题API接口源码,目前只能获取标题,不能获取关键词和描述,暂不...

0 364
PHP爱站权重查询API接口源码
PHP爱站权重查询API接口源码

这是一款PHP权重查询API接口源码,调用的爱站网的接口,可以查询任意网站权重。...

0 838
PHP查询百度收录API接口源码
PHP查询百度收录API接口源码

PHP查询百度收录API接口源码,对很多站长们很实用,随时查询自己网站域名到底被...

16 878
京东图床上传api接口源码
京东图床上传api接口源码

使用大公司公开的图传可以让我们的图片加载飞快,而且不占用图片存储空间与带...

3 284
Bing每日背景图片API接口源码
Bing每日背景图片API接口源码

Bing每日背景图片API接口源码,图片每天会自动更新,一天更新一张。分享给需要...

3 872
客服QQ:341553759
点击咨询 常见问题 >
官方交流群:90432500
点击加入