来瑞京之后,开始接触了帝国cms,经常拿他和织梦进行比较,发现帝国相对来说又很多的优点,其中js的运用是帝国非常厉害的!今天结合帝国实现文章点击量统计的功能来说一下js和php巧妙结合后的妙用!

传统上来说,很多人都认为html中用<script src=”"></script>来连接js,后面的这个文件只能是js文件,其实并不是这样,这个src后面完全可以是php等服务器类型文件,不过静态解析后,展现为js内容的形式,就实现了更为复杂和智能的js功能。比如,我们可以通过js连接php的方式,来读取某条记录的某个字段,任何用document.write进行写入,这样就变成了一个动态的js文件,就可以在保证文章本身为静态的基础上,局部实现了实时更新。这样的好处是显而易见的,比如我们总不能展示点击量的时候,新的点击量要更新文章后才能看到,这样就和ajax比较类似,但是要简单的多。

帝国cms中,文章的点击量用:[!--onclick--]来展示,但是很多人加入这个标签后发现,文章的点击一直不变,原因很简单,这个标签仅仅是读取了这个点击字段的值而已,我们在浏览这个文章的时候并没有写入新值,所有没有变化,在其模板的变量说明中有一个[!--page.stats--]这个标签,大家可能没有注意到,这个标签就是用js的形式,调用了一个php文件,将点击量写入。我们查看原代码,发现是这样的:

我们随路径找到这个文件,就会看到是一个php文件,根据用get方式传入的栏目、文章id进行了点击量的增加。

然后我们在读取点击量的时候,如果用[!--onclick--]来展示,还是不能实时更新,因为这个js仅仅是进行了cookie判断进而增加点击量,所以这个展示,我们也要用类似这样的js来读取,帝国cms也已经有这个功能。我们加入

这样一串代码,很明显这个代码也是连接到一个php文件,给了本文章的id和栏目id,这样从数据库中读取出点击量,然后用js写入到页面中,这样就实现了点击统计和实施展示。

通过这个例子,可以让大家更加深刻的理解所谓的js和php文件并不是绝对的,通过这样的方式我们可以实现一些很厉害、很特别的功能!所以我们学习不能死学,不能被惯性思维束缚,其实程序是那样简单而又快乐的东西!

本文连接:http://www.521php.com/archives/1062/

程序本天成,妙手偶得之!我们只是代码的搬运工!

转载请注明:http://www.521php.com/archives/1062/

发表评论

昵称:

网址:

eg.博客主题调用的是Gravatar头像,你可以通过邮箱注册获得头像.
/ 快捷键:Ctrl+Enter