基于文本的留言簿


Posted in PHP onOctober 09, 2006

固然基数据库的留言簿可以作得很漂亮,而且也更好管理。 但是对于那些没有数据库空间的朋友们来说,基于文本的留言簿也完成可以适用于个人站来使用。而且只要我们努力去做同样可以做得很好,甚至可以说丝毫不比基于数据库的留言簿差。在这里我向介绍一个基于文本的留言簿。在下面这个地址你可以看到它的演示:http://bamboo.oso.com.cn/note.htm,它具有以下两个特点:
1.    用不同的颜我显示不同人发表的留言;
2.    每个留言者具有选择小图标的功能。
本留言簿要由以下四个文件组成:记录留言内容的note.txt文件;记录留言文字显示颜色的color.txt文件;这两个文件都可以有notepad来创建。反应留言表单的note.htm文件;最终处理留言信息的note.php文件。以下是它们的源代码:
note.htm:
<html>
<head>
<title>===留言簿===</title>
</head>
<body>
  <form method="POST" action="note.php">       
          你的大名:<input type="text" name="name" size="44"><br>       
          你的邮件地址:<input type="text" name="email" size="40"><br>       
          你的个人主页:<input type="text" name="webname" size="40"><br>       
          你的个人主页地址:<input type="text" name="webadd" size="35"><br>       
          你的留言:<br>       
                          
    <textarea rows="2" name="note" cols="50"></textarea>        
      请选择你喜欢的图标:        
       <input type="radio" value="1" checked name="icon">  <img border="0" src="n1.gif" width="19" height="18">         
    <input type="radio" name="icon" value="2">  <img border="0" src="n2.gif" width="16" height="16">      
    <input type="radio" name="icon" value="3">  <img border="0" src="n3.gif" width="16" height="16">     
    <input type="radio" name="icon" value="4">  <img border="0" src="n4.gif" width="19" height="18">       
    <input type="radio" name="icon" value="5">  <img border="0" src="n5.gif" width="19" height="18">       
    <input type="radio" name="icon" value="6">   <img border="0" src="n6.gif" width="19" height="18">      
    <input type="radio" name="icon" value="7">   <img border="0" src="n7.gif" width="15" height="15">       
    <input type="radio" name="icon" value="8">   <img border="0" src="n8.gif" width="19" height="18">        
       <input type="radio" name="icon" value="9">  <img border="0" src="n9.gif" width="19" height="18">         
    <input type="radio" name="icon" value="10">  <img border="0" src="n10.gif" width="18" height="18">     
    <input type="radio" name="icon" value="11">  <img border="0" src="n11.gif" width="18" height="18">     
    <input type="radio" name="icon" value="12">  <img border="0" src="n12.gif" width="18" height="18">       
    <input type="radio" name="icon" value="13">  <img border="0" src="n13.gif" width="15" height="15">        
    <input type="radio" name="icon" value="14">   <img border="0" src="n14.gif" width="18" height="18">      
    <input type="radio" name="icon" value="15">    <img border="0" src="n15.gif" width="15" height="15">               
    </div>     
  <div align="left">      
            
    <input type="submit" value="发送" name="B1"><input type="reset" value="重写" name="B2">       
    <a href="note.php?primsg=1">查看留言</a><br>      
    </div>     
  </form>      
  </body>                   
</html>                   
其中:nx.gif是小图标图片,你自己可以更换。
Note.php:
<?
    if($primsg==1){
       $f = fopen("note.txt","r");
       $msg = fread($f,filesize("note.txt"));
       fclose($f);
       print "$msg";  }
    else{
          if ($name=="") {
            print "你总得给我留下的你的大名吧!否则我如何称呼你?<br>";}
            else if  ($note=="") {
            print "你总得说点什么吧?否则点发送干什么?不会是点错了吧?想查看留言??<br>";
              }
          else{
             if  ($email=="") {
            print "连电子邮件地址也不给留?我如何跟你联系?<br>";
                }
             else if  ($webname==""||$webadd="") {
             print "你没有个人主页?如果有还是希望你给我留下的地址,当作是宣传也可以嘛!<br>";
                }
              $t = date(Y年m月d日);
              $note = str_replace ( "<",  "<", $note);
              $note = str_replace ( ">",  ">", $note);
              $note = str_replace ( "\n",  "<br>", $note);
              $f = fopen("color.txt","r+");
              $color1=fread($f,filesize("color.txt"));
              if($color1==0){
                $color=ff0000;}
              else if($color1==1){
                $color="0000ff";}
              else if($color1==2){
                $color="00ff00";
              }
              else if($color1==3){
                $color="000000";
              }
              if($color1>=3){
                 $color1=0;}
              else{
                 $color1+=1;
              }
              fseek($f,0);
              fputs($f,$color1);
              fclose($f);
              for($I=1;$I<=15;$I++){
                 if($I==$icon){
                   $pic=$I;
                   }
                 }
              $str=strval($pic);
              $strhtml="<img src='n".$str.".gif'>";
              $add="<a href=".$webadd."></a>";
              $main = "$strhtml<br><font color=$color><a href=\"mailto:$email\">$name</a>    个人主页: $add$webname</a>      ($t)<br>
              说:$note <br>";
              $f = fopen("note.txt","a");
              fwrite($f,$main);
              fclose($f);
               $f = fopen("note.txt","r");
              $msg = fread($f,filesize("note.txt"));
              fclose($f);
               echo"$msg";
              }
}
?>

PHP 相关文章推荐
在IIS上安装PHP4.0正式版
Oct 09 PHP
IIS环境下快速安装、配置和调试PHP5.2.0
Dec 17 PHP
php项目打包方法
Feb 18 PHP
PHP 数组排序方法总结 推荐收藏
Jun 30 PHP
php缩放图片(根据宽高的等比例缩放)实例介绍
Jun 09 PHP
页面乱码问题的根源及其分析
Aug 09 PHP
php常用表单验证类用法实例
Jun 18 PHP
PHP简单预防sql注入的方法
Sep 27 PHP
PHP中使用OpenSSL生成证书及加密解密
Feb 05 PHP
php基于Redis消息队列实现的消息推送的方法
Nov 28 PHP
PHP设计模式(六)桥连模式Bridge实例详解【结构型】
May 02 PHP
你真的了解PHP中的引用符号(&)吗
May 12 PHP
图书管理程序(一)
Oct 09 #PHP
图书管理程序(二)
Oct 09 #PHP
改进的IP计数器
Oct 09 #PHP
聊天室php&amp;mysql(五)
Oct 09 #PHP
聊天室php&amp;mysql(四)
Oct 09 #PHP
一个简单的PHP入门源程序
Oct 09 #PHP
PHP学习之PHP表达式
Oct 09 #PHP
You might like
实战mysql导出中文乱码及phpmyadmin导入中文乱码的解决方法
2010/06/11 PHP
php网页病毒清除类
2014/12/08 PHP
彻底搞懂PHP 变量结构体
2017/10/11 PHP
javascript Ext JS 状态默认存储时间
2009/02/15 Javascript
js apply/call/caller/callee/bind使用方法与区别分析
2009/10/28 Javascript
jQuery中的bind绑定事件与文本框改变事件的临时解决方法
2010/08/13 Javascript
js indexOf()定义和用法
2012/10/21 Javascript
表单元素的submit()方法和onsubmit事件应用概述
2013/02/01 Javascript
js工具方法弹出蒙版
2013/05/08 Javascript
解析Jquery的LigerUI如何实现文件上传
2013/07/09 Javascript
document.documentElement和document.body区别介绍
2013/09/16 Javascript
js取消单选按钮选中并判断对象是否为空
2013/11/14 Javascript
Javascript玩转继承(三)
2014/05/08 Javascript
点击表单提交时出现jQuery没有权限的解决方法
2014/07/23 Javascript
基于jquery的文字向上跑动类似跑马灯的效果
2014/09/22 Javascript
JavaScript实战(原生range和自定义特效)简单实例
2016/08/21 Javascript
微信小程序-拍照或选择图片并上传文件
2017/01/06 Javascript
node.js与C语言 实现遍历文件夹下最大的文件,并输出路径,大小
2017/01/20 Javascript
socket在egg中的使用实例代码详解
2019/05/30 Javascript
微信小程序 确认框的实现(附代码)
2019/07/23 Javascript
微信小程序 select 下拉框组件功能
2019/09/09 Javascript
[52:36]VGJ.S vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
win10环境下python3.5安装步骤图文教程
2017/02/03 Python
Python基于jieba, wordcloud库生成中文词云
2020/05/13 Python
在pycharm中关掉ipython console/PyDev操作
2020/06/09 Python
python获取本周、上周、本月、上月及本季的时间代码实例
2020/09/08 Python
现代家居用品及礼品:LBC Modern
2018/06/24 全球购物
电信专业应届生自荐信
2013/09/28 职场文书
外贸英语毕业生自荐信
2013/11/14 职场文书
装修致歉信
2014/01/15 职场文书
学生会竞选演讲稿纪检部
2014/08/25 职场文书
合作经营协议书范本
2014/09/16 职场文书
三人合伙协议书范本
2014/10/29 职场文书
党员干部廉洁自律承诺书
2015/04/28 职场文书
2016年九九重阳节活动总结
2016/04/01 职场文书
MySQL实现配置主从复制项目实践
2022/03/31 MySQL