PHP教程之基于文本的访客签到簿
虽说不上很好,但至少一般的数据操作,再在原有的SQL语言的基础上,用得还是可以的。 一个很偶尔的时机,在网上看到了有人用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=http://edu.cnzz.cn/NewsInfo/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>";
?> 我先解释一下我的学习思路。 使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。 其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。 我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。 在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。 你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。 首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。 装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。 最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。 首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。 至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。 如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了, 本文当是我的笔记啦,遇到的问题随时填充 真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎, 最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。 爱上php,他也会爱上你。 当然这种网站的会员费就几十块钱。 爱上php,他也会爱上你。 Ps:以上纯属原创,如有雷同,纯属巧合 如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
页:
[1]