南方Linux论坛   首页 | 行业 | 下载 | Blog | 桌面应用 | 数据库 | 电子商务 | 文摘 | 网络服务 | 开源 | 系统管理 | 内核代码 | 教程

返回   南方Linux论坛 > Linux 高级应用讨论区 > perl | php | python 脚本程序开发
注册账号 Blog 论坛帮助 会员列表 日历事件 搜索 今日新帖 标记讨论区已读

发表新主题 回复
 
主题工具 显示模式
旧 2007-07-27, 03:17 PM   #1
TOM
级别:10 | 在线时长:143小时 | 升级还需:22小时级别:10 | 在线时长:143小时 | 升级还需:22小时级别:10 | 在线时长:143小时 | 升级还需:22小时级别:10 | 在线时长:143小时 | 升级还需:22小时
论坛义工
 
注册日期: 2006-07-05
帖子: 477
精华: 0
现金: 1632 金币
资产: 1632 金币
声望: 16 TOM 正向着好的方向发展
默认 在 HTML 网页显示浏览次数

如果需要做页面浏览统计,用 PHP 来做十分简单,但如果在一些 HTML 页面上,那就要用一些较迂回的方法了。

实现方法
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
如果要不修改文件名称的情況下实现这个功能,也有好几个方法,例如修改 web server 设置,让 .html 副文件也可以执行 php,或者是读入 web server 的访问纪錄档也可以。
但以上两个方法对於沒有自己 web server 的用戶不太适合,而我会使用的方法是 PHP + JavaScript。

本站另一篇文章 在 HTML 页面上显示 php 动态內容 己介绍了在 HTML 网页中显示 php 內容,而本文也会使用同一方法来做,那即是說会在 HTML 页面中引入 php 程序来执行。

以下是 html 页面及 php 程序的內容:

article.html
PHP 代码:
01 <html>
02 <head>
03 <title>Example</title>
04 </head>
05 <body bgcolor="#FFFFFF" text="#000000">
06 本文瀏覽次數: <script type="text/javascript" language="Javascript" src="/article_counter.php"></script>
07 </body>
08 </html>

article_counter.php
PHP 代码:
01 <?php
02
// get the current view
03 $counter = file_get_contents("article_counter.dat");
04
05
if(!isset($_COOKIE['article_read'])){
06     setcookie("article_read", 1, time()+3600);
07     $counter++;
08     $fp = fopen("article_counter.dat, "w");
09     fwrite($fp, $counter);
10     fclose($fp);
11 }
12
13 echo "
document.write('" . $counter . "');";
14 ?>

以上例子中,article.html 內的第 6 行以 javascript 的方法引入 article_counter.php,而 article_counter.php 會先打開 article_counter.dat 取得目前已閱讀次數,然後判決當使用者在過去一小時沒有看過這個頁面的話,便更新 article_counter.dat 內的數值,而在最後第 13 行就是印出 javascript 的語法。 (在使用時請確定 article_counter.dat 有寫入權限)

此帖于 2007-07-27 03:19 PM 被 TOM 编辑.
TOM 当前离线  
回复时引用此帖
发表新主题 回复


当前查看此主题的会员: 1 (0 位会员和 1 位游客)
 
主题工具
显示模式

发帖规则
不可以发表新主题
不可以回复主题
不可以上传附件
不可以编辑您的帖子

论坛启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


所有时间均为北京时间。现在的时间是 05:29 AM


vBulletin 3.6.8 Powered by 南方Linux联盟
版权所有 ©2004 - 2009, bbs.linuxunion.net