基于文本的访客签到簿


Posted in PHP onOctober 09, 2006

一个很偶然的机会,在网上看到了有人用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>";
   ?> 

PHP 相关文章推荐
Phpbean路由转发的php代码
Jan 10 PHP
CodeIgniter php mvc框架 中国网站
May 26 PHP
swfupload 多文件上传实现代码
Aug 27 PHP
很好用的PHP数据库类
May 27 PHP
PHP字符串 ==比较运算符的副作用
Oct 21 PHP
PHP array_push 数组函数
Dec 26 PHP
PHP 加密解密内部算法
Apr 22 PHP
PHP用户验证和标签推荐的简单使用
Oct 31 PHP
详解cookie验证的php应用的一种SSO解决办法
Oct 20 PHP
php在windows环境下获得cpu内存实时使用率(推荐)
Feb 08 PHP
掌握PHP垃圾回收机制详解
Mar 13 PHP
php中目录操作opendir()、readdir()及scandir()用法示例
Jun 08 PHP
基于文本的搜索
Oct 09 #PHP
实现分十页分向前十页向后十页的处理
Oct 09 #PHP
实现“上一页”和“下一页按钮
Oct 09 #PHP
一个程序下载的管理程序(四)
Oct 09 #PHP
PHP下MAIL的另一解决方案
Oct 09 #PHP
一个程序下载的管理程序(二)
Oct 09 #PHP
在php中取得image按钮传递的name值
Oct 09 #PHP
You might like
php 无法加载mcrypt.dll的解决办法
2013/04/03 PHP
php的POSIX 函数以及进程测试的深入分析
2013/06/03 PHP
ubuntu10.04配置 nginx+php-fpm模式的详解
2013/06/03 PHP
PHP判断一个gif图片是否为动态图片的方法
2014/11/19 PHP
PHP实现将视频转成MP4并获取视频预览图的方法
2015/03/12 PHP
PHP 中提示undefined index如何解决(多种方法)
2016/03/16 PHP
jquery 最简单易用的表单验证插件
2010/02/27 Javascript
onkeydown事件解决按回车键直接提交数据的需求
2013/04/11 Javascript
js函数返回多个返回值的示例代码
2013/11/05 Javascript
Javascript 遍历页面text控件详解
2014/01/06 Javascript
JS控制弹出新页面窗口位置和大小的方法
2015/03/02 Javascript
javascript实现3D变换的立体圆圈实例
2015/08/06 Javascript
jQuery获取父元素节点、子元素节点及兄弟元素节点的方法
2016/04/14 Javascript
animate 实现滑动切换效果【实例代码】
2016/05/05 Javascript
jQuery实现链接的title快速出现的方法
2017/02/20 Javascript
微信小程序 地图map实例详解
2017/06/07 Javascript
基于JavaScript实现飘落星星特效
2017/08/10 Javascript
详解原生JS动态添加和删除类
2019/03/26 Javascript
vue3.0 搭建项目总结(详细步骤)
2019/05/20 Javascript
vuex + keep-alive实现tab标签页面缓存功能
2019/10/17 Javascript
AngularJS动态生成select下拉框的方法实例
2019/11/17 Javascript
Quasar Input:type=&quot;number&quot; 去掉上下小箭头 实现加减按钮样式功能
2020/04/09 Javascript
python zip文件 压缩
2008/12/24 Python
Python实现将通信达.day文件读取为DataFrame
2018/12/22 Python
用Python逐行分析文件方法
2019/01/28 Python
python操作日志的封装方法(两种方法)
2019/05/23 Python
python 杀死自身进程的实现方法
2019/07/01 Python
Python+OpenCV图像处理——图像二值化的实现
2020/10/24 Python
如何估计一张表的大小(假设该表中有1万条数据)
2016/03/27 面试题
网吧收银员岗位职责
2013/12/14 职场文书
人事科岗位职责范本
2014/03/02 职场文书
安全生产月演讲稿
2014/05/09 职场文书
解决jupyter notebook启动后没有token的坑
2021/04/24 Python
pandas:get_dummies()与pd.factorize()的用法及区别说明
2021/05/21 Python
ORACLE数据库应用开发的三十个注意事项
2021/06/07 Oracle
一文搞懂Redis中String数据类型
2022/04/03 Redis