一般的计数器程序用的执行外部程序函数exec()
,但很多主机
空间(包括收费的)拒绝这个危险操作
。
我们只好用fread(),fwrite()等文件读写函数
,关键在于采用哪种方式fopen()打开文件
。试了N次后,证明以下程序是可行,在收费
空间上获得验证。
count目录
|---count.php
|---counter.txt
|---0~9的数字GIF图片(0.gif,...,9.gif)
以下为引用的内容:
1<?
2/*本文件为countconut.php*/
3
4$countfile="count/counter.txt";
5
6if(!file_exists("$countfile")){
7$fp=fopen("$countfile","w");
8$num=1;
9fputs($fp,$num,8);
10fclose($fp);
11}
12else{
13$fp=fopen("$countfile","rw+");
14$num=fread($fp,8);
15$num++;
16rewind($fp);
17fputs($fp,$num,8);
18fclose($fp);
19}
20
21/*如果不用图片显示数字,请将以下直到?>之前的部分,改为echo"<fontcolor=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."<imgsrc="count/$numbers_exploded.gif">";
26}
27echo$output_str;
28?>
使用方法:网页教学网
http://www.webjx.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软件。