php ip统计地区,php统计IP以及在线人数的统计

这篇博客介绍了一种使用JavaScript调用PHP脚本`count.php`来统计网站昨日、今日访问量和在线人数的方法。`count.php`依赖于`putenv()`函数,并需要在同目录下创建count、temp、online文件以及count.txt。脚本通过读写文件实现计数,并设置cookie记录访问次数,同时更新在线用户状态。
摘要由CSDN通过智能技术生成

1.用JS调用文件count.php 在你需要加入统计的的地方加入 实际运用中注意修改路径!

2.php环境必须支持putenv()函数,可以统计昨日访问,今日访问,在线人数,您访问的次数。

3 . 在count.php相同目录建立以下文件 count,temp,online,新建文本文档count.txt 然后去掉扩展名就是文件count了;如果是Linux主机请把这三个文件属性设为777.

count.php文件代码:

$file = "count"; // 记数文件名称

$startno = "1000"; // 起始数值

$tempfile = "temp";

$t_now = time();

$t_array = getdate($t_now);

$day = $t_array['mday'];

$mon = $t_array['mon'];

$year = $t_array['year'];

if (file_exists("$file")) {

$count_info=file("$file");

$c_info = explode(",", $count_info[0]);

$total_c=$c_info[0];

$yesterday_c=$c_info[1];

$today_c=$c_info[2];

$lastday=$c_info[3];

} else {

$total_c="$startno";

$yesterday_c="0";

$today_c="0";

$lastday="0";

}

if ( !isset($HTTP_COOKIE_VARS["countcookie"]) || $HTTP_COOKIE_VARS["countcookie"] != $day) {

$your_c=1;

$lockfile=fopen("temp","a");

flock($lockfile,3);

putenv('TZ=JST-9');

$t_array2 = getdate($t_now-24*3600);

$day2=$t_array2['mday'];

$mon2=$t_array2['mon'];

$year2=$t_array2['year'];

$today = "$year-$mon-$day";

$yesterday = "$year2-$mon2-$day2";

if ($today != $lastday) {

if ($yesterday != $lastday) $yesterday_c = "0";

else $yesterday_c = $today_c;

$today_c = 0;

$lastday = $today;

}

$total_c++;

$today_c++;

$total_c = sprintf("%06d", $total_c);

$today_c = sprintf("%06d", $today_c);

$yesterday_c = sprintf("%06d", $yesterday_c);

setcookie("countcookie","$day",$t_now+43200);

$fp=fopen("$file","w");

fputs($fp, "$total_c,$yesterday_c,$today_c,$lastday");

fclose($fp);

fclose($lockfile);

}

if ( empty( $your_c ) ) $your_c = 1;

setcookie("yourcount",$your_c+1,$t_now+43200);

$your_c = sprintf("%06d", $your_c);

//开始统计在线

$filename="online";

$onlinetime=600; //同一IP在线时间,单位:秒

$online_id=file($filename);

$total_online=count($online_id);

$ip=getenv("REMOTE_ADDR");

$nowtime=time();

for($i=0;$i

$oldip=explode("||",$online_id[$i]);

$hasonlinetime=$nowtime-$oldip[0];

if($hasonlinetime

}

$nowonline[]=$nowtime."||".$ip."||";

$total_online=count($nowonline);

$fp=fopen($filename,"w");

rewind($fp);

for($i=0;$i

fputs($fp,$nowonline[$i]);

fputs($fp,"n");

}

fclose($fp);

if($total_online==0)$total_online=1;

$total_online = sprintf("%06d", $total_online);

///

echo "document.write("·总IP访问:".$total_c."");";

echo "document.write("

");";

echo "document.write("·昨日访问:".$yesterday_c."");";

echo "document.write("

");";

echo "document.write("今日IP:".$today_c."");";

echo "document.write(" ");";

echo "document.write("·您 访 问:".$your_c."");";

echo "document.write("

");";

echo "document.write("当前在线:".$total_online."");";

exit;

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值