十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
不知道你的具体需求是什么样的,建议不要羡数采取Session_OnStart和Session_OnEnd
10多年的策勒网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站建设的优势是能够根据用户设备显示端的尺寸不同,自动调整策勒建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联从事“策勒网站设计”,“策勒网站推广”以来,每个客户项目都认真落实执行。
的方式,伍派敬这种方式并不可靠,简单一点的方法就是腔慎每产生一个新的session就加1(可以用isset检查session中有没有某一个标记变量,如果不存在,就是新的session,给它添加上标记变量,并统计加1),至于session什么时候结束就不用管了。如果一定要这样,就需要在数据库中新建一个数据表,记录每一个session,并记录好每个session的最后访问时间,每次页面被访问时就检查有没有超时的session,一旦超时,就清除对应的session,删掉记录,并统计加1。
phpMyVisites
phpMyVisites是一个网站流量统计系统,它能够提供非常详细的统计察备报告和高级图形报表。phpMyVisites不是一个Apachelog分析工具,它建有自己的log。它的特点包括: 安装部署:提供可视化的安装向导,并且使用简单只要把一段简单的Javascript代码添加到你网站的页面中就能够马上开始收集访问者的信息。一个简洁,友好的界面可用来展示数据和帮助数据分析。提供简洁,明了的图形分析报表。安全:phpMyVisites能够最大限度地阻止入侵和外部攻击。支持多网站统计多用户:可以添加无限个用户并对每个用户赋予不同的管理权限(针对某一个网站的查看和管理的权限)。国际化支持:phpMyVisites提供 30种语言包。能够准确统计一段时间内的访问量(天/周/月/年)。访问者的回头率:新访问者,经常访问者,有规律性的访问者。提供多种文件格式的统计报告(PDF,Image等)。对被统计的网页进行分组/分级。访问者分析:统计访问者是从哪个页面离开网站的和从哪个页面纳腔进入网站或通过哪个搜索引擎的关健字进入网站,在网站的停留时间,所访问的页面等。可通过e-mail或RSS聚合获取网站的流量信息。
phpTrafficA
phpTrafficA是一个统计工具用于网站流量分析。基于PHP与MySQL开发。它能够统计你网站的流量,包括来自哪些搜索引擎,关健败茄毁字和其它转向你网站的链接。它还能够分析浏览你网站所用的操作系统,浏览器,访问者停留时间等等。
AudiStat
AudiStat是一个基于PHP+MySQL开发的,轻量级的,占用服务器很少资源的网站流量统计系统。 它能够统计点击量,涉及的页面,访问者国家,访问者域名,访问者所用的浏览器等。统计信息展示页面可以通过Html代码自己定制。在最新版本中还加入跟踪google爬虫的功能。
piwik
Piwik是一套基于Php+MySQL技术构建,能够与Google Analytics相媲美的开源网站访问统计系统,前身是phpMyVisites。Piwik可以给你详细的统计信息,比如网页浏览人数, 访问最多的页面, 搜索引擎关键词等等,并且采用了大量的AJAX/Flash技术,使得在操作上更加便易。此外,它还采用了插件扩展及开放API架构,可以让开发人员根据自已的实际需求创建更多的功能.
Webanalyse
采用PHP4开发的网站流量统计工具。WebAnalyse没有使用任何数据库,或Apache logs支持。以便让安装更加快速和简单。
Open Web Analytics
Open Web Analytics是一个开源的网站流量统计系统。基于PHP/Open Flash Chart/Ajax技术开发,既可以单独使用也可以与WordPress、GalleryMediaWiki集成使用。支持多个网站,集成 Google Maps,RSS/Atom订阅跟踪等功能。
SlimStat
SlimStat是一个基于PHP+MySQL开发的网站流量访问统计分析系统,类似于Google Analytics。它可以按时间段显示:每个页面的访问数,涉及的URL和域名,搜索关键字,浏览器种类、操作系统类型、国家、分辩率等。
具体内容去参考资料里面看吧,个人比较推荐piwik
如果你不需要记录每次访问的详细信息,可以不用记录每一次访问,那样数据库会非常庞大,而且统计也会很慢。
简单的方法纯棚拿是就是只要一条记录,用四个字段分别累计本日、本周、本月、本年、总共的访问数,每次访问做搭的时侯对这些字段加1,另外一个字段记录最后一次更新的日期,如果最后更新日期不是本日,就在加1前把本日字段设置为0,和没本周、本月、本年字段类似处理即可。
流量统计功能
显示效果:
总访问量: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");
}
?