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、访问页面进行统计

时间: 2024-11-14 23:03:51

wuzhicms访问统计实现方法的相关文章

asp.net mvc,基于aop实现的接口访问统计、接口缓存等

其实asp.net 上aop现有的框架应该蛮多的,比如静态注入式的PostSharp(新版本好像已经商业化了,旧版本又不支持.net4.0+),或者通过反射的(性能会降低). 本文则是通过mvc其中一种方法拦截器ActionFilter(参考网上已经有很多类似例子). 首先新建一个日志控制类,命名为ApiLogAttribute,继承于ActionFilterAttribute /// <summary> /// 记录访问日志以及站点安全检查 /// </summary> publ

asp.net 访问页面访问统计实现

0x00.背景: 1.用户访问网站所有页面就将访问统计数加1 ,按每月存放. 2.站点并没有用到母版面来实现,所有各个页面都很独立. 3.网站是很早这前的网站,尽量省改动以前的代码.按理说我们应该做一个第三方统计来处理会更好, 但应客户要求还要弄到一个站点下!实际情况是尽量小改页面就好! 0x01.核心代码: 1.实现Http拦截操作,核心代码就是这一个了: using System; using System.Collections.Generic; using System.Collecti

给大家分享web开发新手修改hosts文件实现本地域名访问的正确方法

1.如何正确修改hosts文件: 一般打开hosts文件里面都会有个示例,按照其格式修改即可 比如以下内容: # For example: # # 102.54.94.97 rhino.acme.com # source server # 38.25.63.10 x.acme.com # x client host 即代表打开rhino.acme.com这个网址将解析到102.54.94.97,ip地址与网址间至少有一空格,当然建议通过按Table键来编辑,即美观又不容易编写失误;这也就是通过解

Python类属性访问的魔法方法

Python类属性访问的魔法方法: 1. __getattr__(self, name)- 定义当用户试图获取一个不存在的属性时的行为 2. __getattribute__(self, name)- 定义当该类的属性被访问时的行为 注意:当__getattr__与__getattribute__同时重写时,访问属性时,优先调用__getattribute__,只有当被访问的属性不存在时才触发__getattr__ 3. __setattr__(self, name, value)- 定义当一个

[转]eclipse启动tomcat无法访问的解决方法

这篇文章介绍了eclipse启动tomcat无法访问的解决方法,有需要的朋友可以参考一下 症状: tomcat在eclipse里面能正常启动,而在浏览器中访问http://localhost:8080/不能访问,且报404错误.同时其他项目页面也不能访问. 关闭eclipse里面的tomcat,在tomcat安装目录下双击startup.bat手动启动tomcat服务器.访问htt://localhost:8080/能正常访问tomcat管理页面. 症状原因: eclipse将tomcat的项目

开源网站访问统计系统Piwik

http://www.piwik.cn/ http://www.piwik.org/ Piwik 是一套基于 Php+MySQL 技术构建,能够与 Google Analytics 相媲美的开源网站访问统计系统.Piwik 可以给你详细的统计信息,比如网页浏览人数, 访问最多的页面, 搜索引擎关键词等等,并且采用了大量的AJAX/Flash技术,使得在操作上更加便易. Piwik 可以安装在你的服务器上面,数据就保存在你自己的服务器上 面.你可以非常容易的插入统计图表到你的博客或是网站后台的控制

google无法访问 2014解决方法详解

方法二 寻找可用IP地址 IP地址一:http://74.125.205.147/ 即可访问谷歌 转:http://www.newasp.net/tech/89292.html 以是我个人实测的:配合 Chrome 浏览器.GoaAgent v3.1.8.SwitchySharp.crx.SwitchyOptions.bak 就可以访问google 而且搜索打开的页面很快. google无法访问 2014解决方法详解,布布扣,bubuko.com

IIS开启伪静态后html静态页面无法访问的解决方法

IIS开启伪静态后,发现原本存在的html静态页面无法访问了,显示的404错误.网上查了下,是因为实现伪静态就是使用 URLRewriter 来映射后缀,会把asp等动态页面映射成html,但是原来存在的html静态页面也被定义的规则映射到其它页面了,所以找不到页面而无法访问. 有一个很简单的方法就是将html页面的后缀名改成htm,或者是把映射的规则改成映射为htm,总之就是把我们的伪静态页面和真正的静态页面分别用html和htm区分开来,但这只是治标不治本的方法. 最好的方法就是修改伪静态规

ajax的访问 WebService 的方法

转自原文 ajax的访问 WebService 的方法 如果想用ajax进行访问 首先在web.config里进行设置 添加在 <webServices> <protocols> <add name= "HttpPost" /> <add name= "HttpGet" /> </protocols> </webServices> <system.web>节点之下 这样就是可以通过u