时间:2021-05-02
本文实例讲述了Ajax实现对静态页面的文章访问统计功能。分享给大家供大家参考,具体如下:
众所周知,静态页面不仅速度快,而且对seo也有一定的帮助。前些日子,写了一帖关于《在SAE平台实现WordPress页面纯静态化至KVDB》。我自己使用了一段时间后,发现提速确实很明显。但是随之而来的一个问题就是,由于文章静态化后,页面并不会经过WordPress程序的处理,这样就导致了文章的访问量统计失效。当然,有一个叫做wp-postview的插件是可以解决这个问题的,但是我不是很喜欢插件,因为会拖慢整体的速度。所以这里就给出一个解决方案,就是使用Ajax来实现统计,同样是基于SAE平台的。
定义文章访问统计类
这个其实在我前面的帖子里面已经有提到过了KVDB+TaskQueue实现高效计数器,对这个做简单修改即可。由于不经过php处理,所以就不能使用队列服务来计数。同样定义计数类,并且放到网站根目录下:
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 $countkey=$_GET['key'];//获取要操作的计数key if($countkey=="") exit; if($_GET['action']=="add"){ $cou=new counter($countkey); $cou->inc();//计数key对应的值加1 }elseif($_GET['action']=="get"){ $cou=new counter($countkey); echo $cou->get(); } class counter { private $kvdb; private $key; public function __construct($key){ $this->kvdb=new CKvdb(); $this->key=$key; } public function inc(){ $num=$this->kvdb->get($this->key)+1; $this->kvdb->set($this->key,$num); return $num; } public function dec(){ $num=$this->kvdb->get($this->key)-1; $this->kvdb->set($this->key,$num); return $num; } public function get(){ $num=$this->kvdb->get($this->key); return intval($num); } } class CKvdb //这个类封装的kvdb操作。 { private $db; function __construct(){ $this->db=new SaeKv(); $this->db->init(); } public function set($key,$value) { $this->db->set($key,$value); } public function get($key) { return $this->db->get($key); } }添加计数代码
在你的文章内容页面,添加如下的Ajax请求代码,该代码是基于jQuery的:
? 1 2 3 4 5 var keyTemp = $('#postTemp').text(); $.get('http://localhost/counter.php',{ action:'add',key:keyTemp }); $.get('http://localhost/counter.php',{ action:'get',key:keyTemp },function(data){ $('#view').text(data+' Views'); });keyTemp变量就是文章的别名,即存入KVDB中的键。我把该健存到一个隐藏的div身上,然后在使用Ajax的时候去获取该div的内容。Ajax中第一个get就是去访问counter.php计数类,并且带上参数,实现访问加1. 第二个get就是取访问值了,把取到的值放到相应的地方中去。
希望本文所述对大家PHP程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了thinkPHP+ajax实现统计页面pv浏览量的方法。分享给大家供大家参考,具体如下:统计pv量很常用,下面的代码用ajax实现的,使用ajax
最近因工作需要,要在静态页面上实现分页,想了下,决定用AJAX来实现,所以就捣鼓了下面这么个东西,截图如下:复制代码代码如下:AJAX静态分页静态分页的AJAX
一、对网站页面进行静态化处理 将动态页面转化为实际存在的静态页面这种方法,由于静态页面的存在,少了动态解析过程,所以提高了页面的访问速度和稳定性,使得优化
本文实例讲述了JS+JSP通过img标签调用实现静态页面访问次数统计的方法。分享给大家供大家参考,具体如下:测试页面:test.htmltestthisisat
最近突然想把项目中新闻管理模块做成静态页,在网上找到很多很好的文章,在这里记录一下,现在只是实现静态页面的生成并没有实现分页功能。其主要原理就是读取数据库的数据