当前位置: 首页 > 图文教程 > 网络编程 > PHP > 关于网站计数器的PHP程序代码

PHP
MYSQL版本大于4.1问题 - PHPchina
怎么让用户点击一个连接后,把一个图片另存了 - PHPchina
武汉10月15日Phper聚会召集!!! - PHPchina
php如果不等待exec执行的程序创建的子进程? - PHPchina
哪位知道DISCUZ处理防SQL注入的代码是哪部分 - PHPchina
求教!我实在不知道哪里问题,在线等ing - PHPchina
怎样结束用户某一进程 - PHPchina
比对用户名密码能不能这样写? - PHPchina
求助:如何在PHP+mysql中实现数据备份? - PHPchina
大家看看这个配置对吗 - PHPchina
如何禁止require当前文件 - PHPchina
无法将回调函数放在类中? - PHPchina
村里 PHP代码高亮是怎么实现的? - PHPchina
apache安装后.服务里没有apache2这个服务! - PHPchina
请教一个小问题 - PHPchina
config.php里面是不是应该把多数参数设置为常量而不是变量? - PHPchina
请教高手一个问题 - PHPchina
如何让百度收录我的网站 ?? - PHPchina
谁能给个注入的简单语句? - PHPchina
求PHP站内搜索思路 - PHPchina

关于网站计数器的PHP程序代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 112 ::
收藏到网摘: n/a

一般的计数器程序用的执行外部程序函数 exec(),但很多主机空间(包括收费的)拒绝这个危险操作。

我们只好用fread(),fwrite()等文件读写函数,关键在于采用哪种方式fopen()打开文件。试了N次后,证明以下程序是可行,在收费空间上获得验证。

count目录

   |---count.php
   |---counter.txt
   |---0~9的数字GIF图片(0.gif,...,9.gif)

以下为引用的内容:
1<?
 2/* 本文件为count\conut.php */
 3
 4$countfile = "count/counter.txt";
 5
 6if (!file_exists("$countfile")){
 7    $fp=fopen("$countfile","w");
 8    $num=1;
 9    fputs($fp,$num,8);
10    fclose($fp);
11    }
12else{
13    $fp=fopen("$countfile","rw+");
14    $num=fread($fp,8);
15    $num++;
16    rewind($fp);
17    fputs($fp,$num,8);
18    fclose($fp);
19    }
20
21/*如果不用图片显示数字,请将以下直到 ?> 之前的部分,改为 echo  "<font color=red>".$num."</font>";之类*/
22$len_str = strlen($num);
23for($i=0;$i<$len_str;$i++){
24$numbers_exploded = substr($num,$i,1);
25$output_str = $output_str . "<img src=\"count/$numbers_exploded.gif\">";
26}
27echo  $output_str;
28?>

使用方法:软晨学习网http://www.ruanchen.com

例如,在count文件夹外面新建一个test.php。其它位置请修改 $countfile路径。

在test.php要显示的地方直接require一下count.php文件(注意路径)。

以下为引用的内容:
<br>
<?php
echo "您是第";
require("count/count.php");
echo "位访客";
?>

强调最后一个问题,请设置counter.txt文件可读写,Windows下文件权限为everyone,Linux下至少为444。网上的文件或Linux下的文件权限设置要使用FTP软件。