研究了好久,没发现emlog有自带有博客访问统计功能,今天下午就在网上寻找了一些方法,终于解决emlog博客添加博客访问的统计次数的代码,用php代码简单的现实博客访问统计的功能,简单方便,沈军的个人博客给大家分享一下。
emlog博客访客次数统计代码的方法
一、文本统计(简单,但是稳定性不如第二个用数据库记录的)
一般的统计数据都会放在侧边栏side.php,那么就打开你emlog博客模板的文件,默认的博客模板web/blog/content/templates/default/side.php,default取决于你的模板。
将以下代码复制到side.php最后一个?>后面
<?php if("http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == BLOG_URL):?> <div class="widget nowrap"> <h3>博客统计</h3> <?php $sta_cache = Cache::getInstance()->readCache('sta');?> <li><a>日志数量:<?php echo $sta_cache['lognum']; ?></a></li> <li><a>微语数量:<?php echo $sta_cache['twnum']; ?></a></li> <li><a>评论数量:<?php echo $sta_cache['comnum']; ?></a></li> <li><a>运行天数:<?php echo floor((time()-strtotime("2014-1-9"))/86400); ?></a></li> <li><a><?php /*使用文本文件记录数据的简单实现*/ $counter=1; if(file_exists("mycounter.txt")){ $fp=fopen("mycounter.txt","r"); $counter=fgets($fp,9); $counter++; fclose($fp); } $fp=fopen("mycounter.txt","w"); fputs($fp,$counter); fclose($fp); echo "博客访问: ".$counter.""; ?></a></li> </div> <?php endif;?>
二、数据库记录
这个是采用数据库记录的方式来代替文本的记录方式,虽然稳定,但是需要新加几个字段。
代码是这样的
<?php $conn=mysql_connect("localhost","root","abc"); $result=mysql_query("use db_counter"); $re=mysql_query("select * from tb_counter"); $result=mysql_fetch_row($re); $counter=$result[0]; echo "您是第{$counter}位访问者!"; $counter+=1; mysql_query("update tb_counter set counter=$counter"); mysql_close($conn); ?>
在代码中,localhost需要修改成你的数据库地址,root修改为你的数据库用户名,abc修改为数据库的用户密码。
然后操作数据库,添加一个表,名字为tb_counter,在这个表中添加字段名 counter。
根据不同的数据库管理软件来添加数据库
phpadmin操作:
添加新表,字段数填1即可
字段填写counter,类型选择int,其他不用选择
点击插入,插入一个原始值
完成
阿里云后台数据库
如果是用的阿里云的数据库管理的话,可以参考这个操作
添加新表,之后编辑表
添加counter数据
点击下面的新增数据,然后提交修改,添加即可
emlog博客访客次数统计代码提示:
代码第一段和最后一段,表示统计代码只在首页显示,去掉则是在全部页面显示。<?php if("http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == BLOG_URL):?><?php endif;?>
<div class="widget nowrap">则表示统计代码显示的CSS样式,具体的样式可以参考module.php里的样式。
版权属于:东哥笔记 - DongGe.org
本文链接:https://dongge.org/blog/201.html
自2017年12月26日起,『转载以及大段采集进行后续编辑』须注明本文标题和链接!否则禁止所有转载和采集行为!