wuzhicms访问统计实现方法
实现目标:程序实现了对整站页面pv的统计
文件的位置:coreframe/app/content/pv.php
代码预览:
/**
* 总站访问次数统计
*/
defined('IN_WZ') or exit('No direct script access allowed');
//加载数据库类
$db = load_class('db');
$formdata = array();
//获取页面URL
$formdata['referer'] = strip_tags(HTTP_REFERER);
//获取访问时间
$formdata['addtime'] = SYS_TIME;
//获取访问者ip
$formdata['ip'] = get_ip();
//验证cookie信息qkey,便于后续对uv和pv的统计
$qkey = get_cookie('qkey');
if($qkey=='') {
$formdata['qkey'] = uniqid();//13位 唯一值,从cookie中获取和写入,用于记录uv和pv
$lefttime = SYS_TIME+2592000;
set_cookie('qkey',$formdata['qkey'],$lefttime);
} else {
$formdata['qkey'] = $qkey;
}
$table = 'web_pv';
$siteid = intval($GLOBALS['siteid']);
if($siteid) $table.='_'.$siteid;
//访问信息写入数据库
$views = $db->insert($table, $formdata);
输出pv数量
echo '$("#web_pv_num").html("'.number_format($views).'");';
?>
表结构:
DROP TABLE IF EXISTS `wz_web_pv`;
CREATE TABLE `wz_web_pv` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`referer` varchar(150) NOT NULL,
`addtime` int(10) unsigned NOT NULL,
`ip` varchar(15) NOT NULL,
`qkey` varchar(13) NOT NULL,
PRIMARY KEY (`id`),
KEY `qkey` (`qkey`,`addtime`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='总站pv统计';
安装方式:
所有前台页面中加入下面代码
<script type="text/javascript" src="{WEBURL}index.php?f=pv"></script>
相应位置显示浏览量
<sapn id="#web_pv_num">载入中</span>
扩展:
1、可以对uv进行显示
2、访问ip进行统计
3、访问页面进行统计
wuzhicms访问统计实现方法的更多相关文章
- JSP中实现网页访问统计的方法【转】
我采用的是jsp网页,但是不管采用什么语言,原理是一样的. 第一种,单页面统计.就是说,只要点击这个页面就会统计一次. <body> <%!//在这种标记中定义的变量为全局变量 in ...
- Oracle索引梳理系列(一)- Oracle访问数据的方法
版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumiko_sunny所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内 ...
- v$lock 视图访问慢解决方法
V$ 视图访问慢 --解决方法 分析:可能是有数据字典统计信息过久,造成. exec dbms_stats.gather_fixed_objects_stats; ------收集所有数据字典的fix ...
- asp.net 访问页面访问统计实现
0x00.背景: 1.用户访问网站所有页面就将访问统计数加1 ,按每月存放. 2.站点并没有用到母版面来实现,所有各个页面都很独立. 3.网站是很早这前的网站,尽量省改动以前的代码.按理说我们应该做一 ...
- PHP 简易网页访问统计
传统的网页访问统计,已经有很多,如 51la.百度统计.站长统计 一般都需要引用JS,在你的网页内嵌入JS,这个操作存在风险,并且不可控. 可以考虑使用 [img src.css src.link h ...
- 基于.NetCore开发博客项目 StarBlog - (11) 实现访问统计
系列文章 基于.NetCore开发博客项目 StarBlog - (1) 为什么需要自己写一个博客? 基于.NetCore开发博客项目 StarBlog - (2) 环境准备和创建项目 基于.NetC ...
- 下面我会介绍几种轻轻松松访问Google的方法
好人一生平安的大招 Google在大陆已经封了差不多有20天 访问是极其的困难 下面我会介绍几种轻轻松松访问Google的方法 首先 你需要个可靠的hosts 比如 https://git.os ...
- wordpress中文标签无法访问的解决方法
wordpress中文标签无法访问的解决方法 爱好 2年前 (2014-05-29) 7,601 8 当博客从华夏名网转移到阿里云之后,发现了不少问题,其中一个就是wordpress中文标签无 ...
- 为什么匿名内部类只能访问其所在方法中的final类型的局部变量?
大部分时候,类被定义成一个独立的程序单元.在某些情况下,也会把一个类放在另一个类的内部定义,这个定义在其他类内部的类就被称为内部类,包含内部类的类也被称为外部类. class Outer { priv ...
随机推荐
- JAVA:23种设计模式详解(转)2
我们接着讨论设计模式,上篇文章我讲完了5种创建型模式,这章开始,我将讲下7种结构型模式:适配器模式.装饰模式.代理模式.外观模式.桥接模式.组合模式.享元模式.其中对象的适配器模式是各种模式的起源,我 ...
- MSSQLServer基础07(事务,存储过程,分页的存储过程,触发器)
事务 事务:保证多个操作全部成功,否则全部失败,这处机制就是事务 思考:下了个订单,但是在保存详细信息时出错了,这样可以成功吗? 数据库中的事务:代码全都成功则提交,如果有某一条语句失败则回滚,整体失 ...
- kali 安装中文输入法
(1)apt-get install fcitx-googlepinyin (2)你希望继续执行吗?Y (3)连续执行数次 (4)init 6(命令行重启)
- Java开发工具MyEclipse的设置自动联想功能
最近初学Java,正在使用MyEclipse来编写新的项目,刚开始打开MyEclipse感觉这个工具既陌生又熟悉,熟悉之处在于编辑器的几大共通之处它都具备,比如说基本的设置.编辑区.调试区都是类似的, ...
- HDU 4717 The Moving Points(三分)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4717 题意:给出n个点的坐标和运动速度(包括方向).求一个时刻t使得该时刻时任意两点距离最大值最小. ...
- 1218. Episode N-th: The Jedi Tournament(bfs)
1218 简答题 对于当前点 判断每个点是否可达 #include <iostream> #include<cstdio> #include<cstring> #i ...
- Android公共库(缓存 下拉ListView 下载管理Pro 静默安装 root运行 Java公共类)
介绍总结的一些android公共库,包含缓存(图片缓存.预取缓存).公共View(下拉及底部加载更多ListView.底部加载更多ScrollView.滑动一页Gallery).及Android常用工 ...
- hdu2457:DNA repair
AC自动机+dp.问改变多少个字符能让目标串不含病毒串.即走过多少步不经过病毒串终点.又是同样的问题. #include<cstdio> #include<cstring> # ...
- 发布到IIS的时候用户 'WWW-6743CC520E9\ASPNET' 登录失败
在 webConfig 数据连接那里 别用集成验证方式 使用用户名密码的方式连接
- 用I/O口模拟IIC总线协议遇到的一些问题
最近做的一个项目,是基于IIC总线通信的传感器系统.由于另外一个传感器使用的是类IIC协议,而不是标准IIC,所以MCU不能与其通信,最后没有办法,只有通过I/O口模拟的方式实现IIC的总线通信.具体 ...