php统计某个ip一分钟之内的刷新次数并写入txt文档

 我来答
百度网友8538c4d
2016-10-09 · TA获得超过105个赞
知道小有建树答主
回答量:212
采纳率:86%
帮助的人:130万
展开全部
<?php

function getIP(){
    global $ip;
    if (getenv("HTTP_CLIENT_IP"))
    $ip = getenv("HTTP_CLIENT_IP");
    else if(getenv("HTTP_X_FORWARDED_FOR"))
    $ip = getenv("HTTP_X_FORWARDED_FOR");
    else if(getenv("REMOTE_ADDR"))
    $ip = getenv("REMOTE_ADDR");
    else $ip = "Unknow";
    return $ip;
}

$ip = getIP();
$fpgetNum = fopen($ip.'.txt','r+');
$con = fread($fpgetNum,1024);
fclose($fpgetNum);
$fp = fopen($ip.'.txt','w');
if(empty($con))
{
    $num = 1;
}else{
    $num = intval($con)+1;
}

fwrite($fp,$num);
fclose($fp);

 至于一分钟,你只需要存储个第一次的时间戳,当前时间减去那个时间戳小于60才执行这段代码就好了!

追问
对php不太熟悉、可否给下后面的代码呢。。。谢谢啊

打算是对某个ip 在60秒内 刷新页面3次 记入txt文档,只记录这个ip其他的不记录。我的标题好像提错方向了 对不起啊

方便的话 麻烦看下,谢谢
追答
<?php
//获取ip
function getIP(){
    global $ip;
    if (getenv("HTTP_CLIENT_IP"))
    $ip = getenv("HTTP_CLIENT_IP");
    else if(getenv("HTTP_X_FORWARDED_FOR"))
    $ip = getenv("HTTP_X_FORWARDED_FOR");
    else if(getenv("REMOTE_ADDR"))
    $ip = getenv("REMOTE_ADDR");
    else $ip = "Unknow";
    return $ip;
}
 
//你要统计的自定义ip
$coutIP = '127.0.0.1';
$ip = getIP();
//只有你需要的ip才进入统计
if($coutIP == $ip)
{
    if(empty($_COOKIE[$ip]) || (!empty($_COOKIE[$ip]) && (time() - $_COOKIE[$ip]) < 60))
    {

        //获取记录的ip访问次数
        $fpgetNum = fopen($ip.'.txt','r+');
        $con = fread($fpgetNum,1024);
        fclose($fpgetNum);
        $fp = fopen($ip.'.txt','w');
        //第一次访问
        if(empty($con))
        {
            $num = 1;
            //存储第一个时间戳,这里用了COOKIE,读取的客户端cookie,最好存储数据库,cookie是可以删除的!再客户端本地的!
            setcookie($ip,time());

        }else{
            $num = intval($con)+1;
        }
         
        fwrite($fp,$num);
        fclose($fp);
    }
    
}
张样童鞋Vinnym
2016-10-09
知道答主
回答量:59
采纳率:0%
帮助的人:24.3万
展开全部
登片儿性忌统考鹤牡延误窍
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式