一个没有MYSQL数据库支持的简易留言本的编写
由于国内MySQL资源比较紧张,国外的不是太慢,就是不对我国用户开放。因此,在没有MYSQL的日子里,我们想做一些方便他人和完善自己站点的事情,那简直比登天还难,为了摆脱这种痛苦,niky哭思冥想,闭门造车,终于,皇天不负有心人,一个不需要MYSQL数据库支持的简易留言本就这样出台了,我们暂且叫它gbook.php吧,源程序如下:
<?
if ($message)
{
$message = ereg_replace( "rnrn", "n<P>", $message);
//去除无效的控制符号
$date = date( "l, F j Y, h:i a"); //获取指定的日期时间格式
$ip=getenv("REMOTE_ADDR");
$message = "<table border="0" cellspacing="0" width="640" cellpadding="0">
<tr>
<td width="25%"><B>$name </B></td>
<td width="25%">$email</td>
<td width="25%">写于--$date</td>
<td width="25%">来自>>$ip</td>
</tr>
<tr>
<td width="100%" colspan="4">$subject</td>
</tr>
<tr>
<td width="100%" colspan="4">$massage</td>
</tr>
</table><hr>
";
$fp = fopen (basename($PHP_SELF) . ".comment", "a");
fwrite ($fp, $message);
fclose ($fp);
}
@readfile(basename(($PHP_SELF . ".comment")));
//读出记录文件内容
?>
<form method="POST" >
<p>姓名:<input type="text" name="name" size="20"> E-mail:<input type="text" name="email" size="24"><hr>
主题:<input type="text" name="subject" size="55">
<p>
您想说的话:<br><TEXTAREA name="message" rows=10 cols=60 wrap=virtual>
</TEXTAREA><BR><br>
<INPUT name="submit" type="submit" value="发表!"> <input type="reset" value="重写?" name="B2">
</p>
</form>
──────────────────────────────────────
上面的程序,其原理是:在PHP端首先判断message变量是否存在,如果不存在,则读文件。读文件使用了readfile函数。至于文件名的提取,这里使用了一个巧妙的方式(使用$PHP_SELF变量提取文件所在的绝对位置,然后用basename()函数提取文件名,再加上指定的文件尾comment.)来完成的。为了能更好的学习PHP&MySQL,特拿来和大家共享,也希望曾经和niky一样痛苦过的网路人能有一个属于自己的留言本,而不是"xxx留言本由xxx.com提供."而大煞风景。还等什么,赶快行动吧!
版权所有,请勿随便转载!
Copyright ©2000 niky All rights reserved.
【本文版权归作者与奥索网共同拥有,如需转载,请注明作者及出处】