php流量统计功能的实现代码


Posted in PHP onSeptember 29, 2012

流量统计功能
显示效果:
总访问量:399
今日流量:14
昨日流量:16
本代码仅供学习交流,其中必有不妥之处。请见谅!
--
-- 表的结构 `mycounter`
--

CREATE TABLE `mycounter` ( 
`id` int(11) NOT NULL auto_increment, 
`Counter` int(11) NOT NULL, 
`CounterLastDay` int(10) default NULL, 
`CounterToday` int(10) default NULL, 
`RecordDate` date NOT NULL, 
PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=gbk AUTO_INCREMENT=2 ;

函数过程如下:
<?PHP 
public function ShowMyCounter(){ 
//定义变量 
$IsGone = FALSE; 
//读取数据 
$querysql = "SELECT * FROM `mycounter` WHERE id = Ƈ' "; 
$queryset = mysql_query($querysql); 
$row = mysql_fetch_array($queryset); 
//获得时间量 
$DateNow = date('Y-m-d'); 
$RecordDate = $row['RecordDate']; 
$DateNow_explode = explode("-",$DateNow); 
$RecordDate_explode = explode("-",$RecordDate); 
//判断是否已过去一天 
if( $DateNow_explode[0] > $RecordDate_explode[0]) $IsGone = TRUE; 
else if( $DateNow_explode[0] == $RecordDate_explode[0] ){ 
if( $DateNow_explode[1] > $RecordDate_explode[1] ) $IsGone = TRUE; 
else if( $DateNow_explode[1] == $RecordDate_explode[1] ){ 
if( $DateNow_explode[2] > $RecordDate_explode[2] ) $IsGone = TRUE; 
}else BREAK; 
}else BREAK; 
//根据IsGone进行相应操作 
IF($IsGone) { 
$RecordDate = $DateNow; 
$CounterToday = 0; 
$CounterLastDay = $row['CounterToday']; 
$upd_sql = "update mycounter set RecordDate = '$RecordDate',CounterToday = '$CounterToday',CounterLastDay = '$CounterLastDay' WHERE id = Ƈ' "; 
mysql_query($upd_sql); 
} 
//再次获取数据 
$querysql = "SELECT * FROM `mycounter` WHERE id = Ƈ' "; 
$queryset = mysql_query($querysql); 
$Counter = $row['Counter']; 
$CounterToday = $row['CounterToday']; 
$CounterLastDay = $row['CounterLastDay']; 
if($row = mysql_fetch_array($queryset) ){ 
if( $_COOKIE["user"] != "oldGuest" ){ 
$Counter = ++$row['Counter']; 
$CounterToday = ++$row['CounterToday']; 
$upd_sql = "update mycounter set counter = '$Counter',CounterToday = '$CounterToday' WHERE id = Ƈ' "; 
$myquery = mysql_query($upd_sql); 
} 
echo "总访问量:".$Counter; 
echo " 
"; 
echo "今日流量:".$CounterToday; 
echo " 
"; 
echo "昨日流量:".$CounterLastDay; 
}else{//如果数据库为空时,相应的操作 
} 
} 
?>

当然,需要在文件第一行开始写出如下代码:
<?PHP 
session_start(); 
if( !isset($_COOKIE["user"]) ){ 
setcookie("user","newGuest",time()+3600); 
}else { 
setcookie("user","oldGuest"); 
} 
?>
PHP 相关文章推荐
队列在编程中的实际应用(php)
Sep 04 PHP
php中选择什么接口(mysql、mysqli)访问mysql
Feb 06 PHP
PHP 处理TXT文件(打开/关闭/检查/读取)
May 13 PHP
php 获取本地IP代码
Jun 23 PHP
ThinkPHP文件缓存类代码分享
Apr 22 PHP
php将字符串随机分割成不同长度数组的方法
Jun 01 PHP
php抽象类用法实例分析
Jul 07 PHP
php实现QQ空间获取当前用户的用户名并生成图片
Jul 25 PHP
php 使用redis锁限制并发访问类示例
Nov 02 PHP
PHP读取XML格式文件的方法总结
Feb 27 PHP
ThinkPHP3.2框架自定义配置和加载用法示例
Jun 14 PHP
laravel5 Eloquent 实现事务方式
Oct 21 PHP
Zend的AutoLoad机制介绍
Sep 27 #PHP
说说PHP的autoLoad自动加载机制
Sep 27 #PHP
php FLEA中二叉树数组的遍历输出
Sep 26 #PHP
PHP fopen 读取带中文URL地址的一点见解
Sep 25 #PHP
PHP可逆加密/解密函数分享
Sep 25 #PHP
将时间以距今多久的形式表示,PHP,js双版本
Sep 25 #PHP
PHP中空字符串介绍0、null、empty和false之间的关系
Sep 25 #PHP
You might like
一个PHP分页类的代码
2011/05/18 PHP
浅析php中常量,变量的作用域和生存周期
2013/08/10 PHP
采用ThinkPHP中F方法实现快速缓存实例
2014/06/13 PHP
php支付宝系列之电脑网站支付
2018/05/30 PHP
js实现运行代码需要刷新的解决方法
2007/08/18 Javascript
JavaScript 图像动画的小demo
2012/05/23 Javascript
datagrid框架的删除添加与修改
2013/04/08 Javascript
ie8模式下click无反应点击option无反应的解决方法
2014/10/11 Javascript
创建一般js对象的几种方式
2017/01/19 Javascript
js插件实现图片滑动验证码
2020/09/29 Javascript
基于node.js实现微信支付退款功能
2017/12/19 Javascript
JavaScript 斐波那契数列 倒序输出 输出100以内的质数代码实例
2019/09/11 Javascript
微信小程序实现限制用户转发功能的实例代码
2020/02/22 Javascript
react项目从新建到部署的实现示例
2021/02/19 Javascript
[56:41]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 Newbee vs OG
2018/04/01 DOTA
Python中的exec、eval使用实例
2014/09/23 Python
Django框架下在视图中使用模版的方法
2015/07/16 Python
如何在Python中编写并发程序
2016/02/27 Python
Python运算符重载详解及实例代码
2017/03/07 Python
浅谈python中requests模块导入的问题
2018/05/18 Python
PyCharm设置每行最大长度限制的方法
2019/01/16 Python
详解Python3注释知识点
2019/02/19 Python
在Python函数中输入任意数量参数的实例
2019/07/16 Python
python getpass模块用法及实例详解
2019/10/07 Python
Python定时任务APScheduler原理及实例解析
2020/05/30 Python
如何用Anaconda搭建虚拟环境并创建Django项目
2020/08/02 Python
CSS3制作文字半透明倒影效果的两种实现方式
2014/08/08 HTML / CSS
不可轻视HTML5!App三年内将被html5顶替彻底消失
2015/11/18 HTML / CSS
英国潮流网站:END.(全球免邮)
2017/01/16 全球购物
Nisbets法国:英国最大的厨房和餐饮设备供应商
2019/03/18 全球购物
2014年三万活动总结
2014/04/26 职场文书
狮子林导游词
2015/02/03 职场文书
情人节单身感言
2015/08/03 职场文书
2017公司年会主持人开幕词
2016/03/04 职场文书
Pytorch 统计模型参数量的操作 param.numel()
2021/05/13 Python
Python实现日志实时监测的示例详解
2022/04/06 Python