一個很偶然的機會,在網上看到了有人用PHP+MYSQL作了一個訪客簽到簿, 當時覺得很有用處所以自己也很 想搞一個。但是用MYSQL覺得有點在材小用,所以就搞了一個基於文本的訪客簽到簿。其功能與我在網上看 到的用MYSQL作的差不多,在這裡我將其源碼公布,希望它對放大網友學習PHP有所幫助。限於本人的水平, 其中定有BUG,還希望朋友發現了不要忘告訴我一下。本簽到簿由要兩個文件組成:一個是存放簽到信息的sign.txt文件, 該文件可以由NOTEPAD來創建;第二個 是處理信息的sign.php文件。在斑竹園的主頁<http://bamboo.oso.com.cn>有它的演示,歡迎去看看。下面
就是sign.php的源代碼:
sign.php
if(isset($name)&&isset($msg)){
$name=ltrim($name);
$t=date(y年m月d日);
$dat="[".$t."]";
$msg=ltrim($msg);
$name=trim($name);
$msg=trim($msg);
$pristr=$name."  ".$dat." ".$msg."\n";
$f=fopen("sign.txt","a");
fwrite($f,$pristr);
fclose($f);
}
$file=file("sign.txt");
if(!isset($pagenum)){
$pagenum=1;
}
$lesssign=0;
$num=count($file);
$dispnumed=6*($pagenum-1);
$dispnumbeg=$num-$dispnumed;
$artnumeof1=6*$pagenum;
$isdispnum=$num-$artnumeof1;
if($isdispnum<=0){
$dispnumeof=1;
$lesssign=1;
}
else{
$dispnumeof=$isdispnum+1;
}
$sign=0;
$pagec=0;
for($icount=0;($icount<$num)&&($sign==0);$icount+=6){
for($i=0;$i<=6;$i++){
if(($icount*6+$i)==$num){
$sign=1;
}
}
$pagec++;
}
$pagecount=$pagec;
echo"<table width=100% cellspacing=3>";
$fuhao="◇ ";
$color=e9eae9;
$iscolor=0;
$lessnum=5;
echo"<tr><td bgcolor=00ff00 align=center>";
echo"斑竹園簽到簿";
echo"</td></tr>";
for($i=$dispnumbeg;$i>=$dispnumeof;$i--){
$linknum=$num-$i;
$lessnum--;
$stringmsg1=$file[($i-1)];
$stringmsg2=strrev($stringmsg1);
$stringmsg3=strstr($stringmsg2,"psbn");
$stringmsg=strrev($stringmsg3);
$stringlink=strstr($file[($i-1)],"http");
$dispvar=$fuhao.$stringmsg;
echo"<tr><td bgcolor=$color>";
echo$dispvar;
echo "<img src=gif/home3.gif>";
echo"<a href=$stringlink>";
echo$stringlink;
echo"</a>";
echo"</td></tr>";
if($iscolor==0){
$color=ffffff;
$iscolor=1;
}
else{
$color=e9eae9;
$iscolor=0;
}
}
if($lesssign==1){
for($iless=$lessnum;$iless>0;$iless--){
echo"<tr bgcolor=$color><td>";
echo $fuhao."<br>\n";
echo"</td></tr>";
if($iscolor==0){
$color=ffffff;
$iscolor=1;
}
else{
$color=e9eae9;
$iscolor=0;
}
}
}
echo"<tr>";
echo"<form action=index.php method=post>";
echo"<td>";
echo"稱呼:";
echo"<input name=name size=10 maxlength=20>";
echo"地址:";
echo"<input name=msg size=20 maxlength=60 value=http://>";
echo"<input type=submit name=submit value=簽到>";
echo"</td>";
echo"</form>";
echo"</tr>";
echo"</table>";
?>