基于文本的留言簿


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 相关文章推荐
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
Jan 29 PHP
php一个找二层目录的小东东
Aug 02 PHP
解析php中用PHPMailer来发送邮件的示例(126.com的例子)
Jun 24 PHP
php导出csv数据在浏览器中输出提供下载或保存到文件的示例
Apr 24 PHP
基于PHP实现通过照片获取ip地址
Apr 26 PHP
thinkPHP删除前弹出确认框的简单实现方法
May 16 PHP
PHP文件操作实例总结
Sep 27 PHP
PHP+Ajax异步带进度条上传文件实例
Nov 01 PHP
Win7环境下Apache连接MySQL提示连接已重置的解决办法
May 09 PHP
解决laravel查询构造器中的别名问题
Oct 17 PHP
PHP设计模式入门之迭代器模式原理与实现方法分析
Apr 26 PHP
PHP数组基本用法与知识点总结
Jun 02 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
一个PHP缓存类代码(附详细说明)
2011/06/09 PHP
destoon调用企业会员公司形象图片的实现方法
2014/08/21 PHP
Jquery作者John Resig自己封装的javascript 常用函数
2009/11/09 Javascript
onsubmit阻止form表单提交与onclick的相关操作
2010/09/03 Javascript
让你的CSS像Jquery一样做筛选的实现方法
2011/07/10 Javascript
javascript日期转换 时间戳转日期格式
2011/11/05 Javascript
在图片上显示左右箭头类似翻页的代码
2013/03/04 Javascript
ie与ff下的event事件使用介绍
2013/11/25 Javascript
javascript实现的平方米、亩、公顷单位换算小程序
2014/08/11 Javascript
indexOf 和 lastIndexOf 使用示例介绍
2014/09/02 Javascript
jquery实现表单输入时提示文字滑动向上效果
2015/08/10 Javascript
jquery无限级联下拉菜单简单实例演示
2015/11/23 Javascript
整理Javascript函数学习笔记
2015/12/01 Javascript
使用angularjs创建简单表格
2016/01/21 Javascript
echarts鼠标覆盖高亮显示节点及关系名称详解
2018/03/17 Javascript
详解Vue源码之数据的代理访问
2018/12/11 Javascript
layer实现弹出层自动调节位置
2019/09/05 Javascript
Vue中通过vue-router实现命名视图的问题
2020/04/23 Javascript
浅析python继承与多重继承
2018/09/13 Python
想学python 这5本书籍你必看!
2018/12/11 Python
对Python闭包与延迟绑定的方法详解
2019/01/07 Python
解决Python中pandas读取*.csv文件出现编码问题
2019/07/12 Python
python使用OpenCV模块实现图像的融合示例代码
2020/04/10 Python
keras分类模型中的输入数据与标签的维度实例
2020/07/03 Python
python单元测试框架pytest的使用示例
2020/10/07 Python
HTML5在a标签内放置块级元素示例代码
2013/08/23 HTML / CSS
SQL Server 2000数据库的文件有哪些,分别进行描述。
2015/11/09 面试题
下面代码从性能上考虑,有什么问题
2015/04/03 面试题
Java程序员面试题
2013/07/15 面试题
外联部演讲稿
2014/05/24 职场文书
我的中国梦演讲稿300字
2014/08/19 职场文书
水电工程师岗位职责
2015/02/13 职场文书
采购员工作总结范文
2015/08/12 职场文书
golang 实现Location跳转方式
2021/05/02 Golang
JavaScript canvas实现流星特效
2021/05/20 Javascript
MySQL系列之八 MySQL服务器变量
2021/07/02 MySQL