PHP建站技术分享-从入门到精通_各类知识收集PHP建站技术分享-从入门到精通_各类知识收集PHP建站技术分享-从入门到精通_各类知识收集

QQ:420220301 微信/手机:150-3210-7690
当前位置:首页 > 工作总结

PHP编程:Ajax实现对静态页面的文章访问统计功能示例

管理员 2025-02-24
工作总结
10

《PHP编程:Ajax实现对静态页面的文章访问统计功能示例》要点:
本文介绍了PHP编程:Ajax实现对静态页面的文章访问统计功能示例,希望对您有用。如果有疑问,可以联系我们。
 

本文实例讲述了Ajax实现对静态页面的文章访问统计功能.分享给大家供大家参考,具体如下:PHP教程

众所周知,静态页面不仅速度快,而且对seo也有一定的帮助.前些日子,写了一帖关于《在SAE平台实现WordPress页面纯静态化至KVDB》.我自己使用了一段时间后,发现提速确实很明显.但是随之而来的一个问题就是,由于文章静态化后,页面并不会经过WordPress程序的处理,这样就导致了文章的访问量统计失效.当然,有一个叫做wp-postview的插件是可以解决这个问题的,但是我不是很喜欢插件,因为会拖慢整体的速度.所以这里就给出一个解决方案,就是使用Ajax来实现统计,同样是基于SAE平台的.PHP教程

定义文章访问统计类PHP教程

这个其实在我前面的帖子里面已经有提到过了KVDB+TaskQueue实现高效计数器,对这个做简单修改即可.由于不经过php处理,所以就不能使用队列服务来计数.同样定义计数类,并且放到网站根目录下:PHP教程

$countkey=$_GET['key'];//获取要操作的计数keyif($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);  }}

添加计数代码PHP教程

在你的文章内容页面,添加如下的Ajax请求代码,该代码是基于jQuery的:PHP教程

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教程



希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 iCMS, LeCMS, ClassCMS, Fastadmin, PbootCMS, PHPCMS, 易优CMS, YzmCMS, 讯睿CMS, 极致CMS, Wordpress, HkCMS, YznCMS, WellCMS, ThinkCMF, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。

相关推荐

扫码关注

qrcode

QQ交谈

回顶部