澳门新葡萄京娱乐场PHP的计数器程序:解决全部可能遇到的问题

本文属于被风吹倒的男子原创,拥有版权.来自的论坛,网络转载请保留本信息.非网络转载请联系本人.个人站长自己写东西不容易,也为能够给我继续写下去的勇气和动力,请在转载时候不要删除本说明.本文是第一篇,我会找时间陆续把以后的东西写出来的。很多朋友对于php的认识,长期停留在修改别人的程序上,因为可以修改所以懒惰于进步.或者是买来书看的时候,发现php的函数超级无敌多,看到函数库被吓晕了.等等.我自己是属于后者.本文是专门对于针对懒的花时间学习php,但是又想自己做点东西的懒人。
到后来,我参加了学校的一个辅修班,老师上课讲,期末考试要考,于是乎,被逼着,居然能够自己写简单的代码了.
因此,本文就是面向可以修改程序程序中的html,但是无法对程序构造进行修改的朋友,有基本的程序基础,就是:能明白if和else.够了,或者有同样基础的人均适合.高手可以走开.我到现在为止,使用常用的函数仍然需要查手册,仍然再写垃圾代码.
好了,废话少说,我们进入第一阶段吧
能够修改程序的朋友,在同学眼里都是网页高手级别的人物了.我如果开始从什么是变量说起,难免耽误您的时间.我自己又是搞文本收集出身的,所以我们就可以先从详细剖析一个程序的一部分开始.程序很简单,只有几个简单的判断,我会把程序的说明写的无敌详细.Quote:如果您在哪里看不明白,请跟贴告诉我,我在第一时间修改,或者email我,我的邮件地址是rainboy#tom.com,请不要发垃圾邮件给我,我现在已经被垃圾邮件搞的很烦了下面我们从剖析一个最简单的计数器开始计数器的功能是:刷新一次页面,数字增加一.程序如下Code:[Copy
to
clipboard]?$datafile=”data.txt”;$fp1=fopen($datafile,”r”);$num=fgets($fp1,10);$num=trim($num);fclose($fp1);echo
“您是第”.$num.”位客人”;$fp2=fopen($datafile,”w”);$num=$num+1;fputs($fp2,”$num”);fclose($fp2);?下面是对该程序的详细解释Code:[Copy
to clipboard]?/* php的文件都是用? ?或者?php
?包着的,服务器执行的时候能够取出该标签中的内容来执行.*//*设定数据存储文件,因为php中的变量是存储在服务器内存中的,执行完了以后立刻消失,所以我们需要用文本来保存浏览的访问者的人数,我们这个使用了data.txt,我们可以根据情况调整.php中的变量前面都有一个$符号,所以,有$符号的都是变量.手工建立数据文件,在里面写上1,然后保存*/$datafile=”data.txt”;/*这一步是打开文件,使用了fopen()函数,fopen函数就是打开文件的函数,该函数接受两个参数,一个是文件名,一个是打开方式.比如本程序这里使用”r”方式打开就是用只读方式打开.$fp1是一个句柄,什么是句柄呢?就好比你使用牙刷的时候,是通过使用牙刷的柄来操作牙刷使你的牙齿干净的.那么$fp1就好比是那个牙刷柄,php通过操作$fp1这个句柄,来达到控制data.txt这个数据存储文件的.本步操作用一句话概括就是:使用fopen函数打开数据文件,并且把打开的文件的句柄传递给$fp1,如果读到此处您对fopen函数的使用方法仍然有疑问,请参考本站php在线手册函数的使用方法*/$fp1=fopen($datafile,”r”);/*一句话来概括本语句的使用:打开文件读取数据使用函数:fgets(“句柄”,”读取文件内容的字节数”);,得到的结果就是通过读取句柄$fp1,达到读取文件内容的目的.本句得到$num即是文件中前10个字节.*/$num=fgets($fp1,10);/*trim();函数用来去掉字符串前后的空格的,比如$num=”123
“;trim($num)就是123;*/$num=trim($num);/*fclose函数关闭文件,fclose函数需要的参数是$fp1*/fclose($fp1);/*echo函数的使用方法大家都知道吧,相当于print();在网页输出的意思连接字符串和变量之间使用”.”,这样就可以在php中打印变量.连接符号”.”的使用方法很重要.要明确,请参考本站的php在线手册中关于字符串连接的部分.*/echo
“您是第”.$num.”位客人”;/*使用fopen打开文件,打开方法为“w”,为w方法打开的文件为只写模式,如果文件原来不存在,则创建文件,如果文件存在,则先清空文件内容。然后写入,本句的作用是打开文件,然后把句柄传递给$fp2.*/$fp2=fopen($datafile,”w”);/*浏览数增加一*/$num=$num+1;/*将增加一以后的数字写入文件fputs的使用方法很简单,第一个参数是文件句柄,第二个参数是要写入的内容,如果您对fputs函数的使用方法有疑义,请参考本站php在线手册中的*/fputs($fp2,”$num”);/*关闭打开的文件*/fclose($fp2);?

一般的计数器程序用的执行外部程序函数
exec(),但很多主机空间(包括收费的)拒绝这个危险操作。
我们只好用fread(),fwrite()等文件读写函数,要害在于采用哪种方式fopen()打开文件。试了N次后,证实以下程序是可行,在收费空间上获得验证。

count目录
|—count.php
|—counter.txt
|—0~9的数字GIF图片(0.gif,…,9.gif)
<?
/* 本文件为countconut.php */

$countfile = “count/counter.txt”;

if (!file_exists(“$countfile”)){
$fp=fopen(“$countfile”,”w”);
$num=1;
fputs($fp,$num,8);
fclose($fp);
}
else{
$fp=fopen(“$countfile”,”rw “);
$num=fread($fp,8);
$num ;
rewind($fp);
fputs($fp,$num,8);
fclose($fp);
}

/*假如不用图片显示数字,请将以下直到 ?> 之前的部分,改为 echo
“<font color=red>”.$num.”</font>”;之类*/
$len_str = strlen($num);
for($i=0;$i<$len_str;$i ){
$numbers_exploded = substr($num,$i,1);
$output_str = $output_str . “<img
src=”count/$numbers_exploded.gif”>”;
}
echo $output_str;
?>
使用方法:
例如,在count文件夹外面新建一个test.php。其它位置请修改
$countfile路径。
在test.php要显示的地方直接require一下count.php文件(注重路径)。
<br>
<?php
echo “您是第”;
require(“count/count.php”);
echo “位访客”;
?>
<br>

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

发表评论

电子邮件地址不会被公开。 必填项已用*标注