基于文本的访客签到簿


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 相关文章推荐
功能齐全的PHP发送邮件类代码附详细说明
Jul 10 PHP
PHP中查询SQL Server或Sybase时TEXT字段被截断的解决方法
Mar 10 PHP
hessian 在PHP中的使用介绍
Dec 13 PHP
Apache中php.ini的设置方法
Feb 28 PHP
解析php如何将日志写进syslog
Jun 28 PHP
zf框架db类的分页示例分享
Mar 14 PHP
PHP生成及获取JSON文件的方法
Aug 23 PHP
PHP基于DOMDocument解析和生成xml的方法分析
Jul 17 PHP
php中curl和soap方式请求服务超时问题的解决
Jun 11 PHP
PHP实现文字写入图片功能
Feb 18 PHP
实现laravel 插入操作日志到数据库的方法
Oct 11 PHP
PHP网站常见安全漏洞,及相应防范措施总结
Mar 01 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
php5.2.0内存管理改进
2007/01/22 PHP
php循环语句 for()与foreach()用法区别介绍
2012/09/05 PHP
PHP Try-catch 语句使用技巧
2016/02/28 PHP
thinkPHP分页功能实例详解
2017/05/05 PHP
php桥接模式应用案例分析
2019/10/23 PHP
php设计模式之模板模式实例分析【星际争霸游戏案例】
2020/03/24 PHP
基于jQuery的图片不完全按比例自动缩小
2014/07/11 Javascript
jQuery动态背景图片效果实现方法
2015/07/03 Javascript
jquery实现顶部向右伸缩的导航区域代码
2015/09/02 Javascript
AngularJS中如何使用$parse或$eval在运行时对Scope变量赋值
2016/01/25 Javascript
Angularjs结合Bootstrap制作的一个TODO List
2016/08/18 Javascript
有关suggest快速删除后仍然出现下拉列表的bug问题
2016/12/02 Javascript
Bootstrap php制作动态分页标签
2016/12/23 Javascript
nodejs个人博客开发第七步 后台登陆
2017/04/12 NodeJs
js,jq,css多方面实现简易下拉菜单功能
2017/05/13 Javascript
vuejs事件中心管理组件间的通信详解
2017/08/09 Javascript
Vue实现内部组件轮播切换效果的示例代码
2018/04/07 Javascript
Vue项目开发常见问题和解决方案总结
2020/09/11 Javascript
举例讲解Python的lambda语句声明匿名函数的用法
2016/07/01 Python
Python制作Windows系统服务
2017/03/25 Python
在django中使用自定义标签实现分页功能
2017/07/04 Python
Python3实现发送QQ邮件功能(文本)
2017/12/15 Python
Scrapy框架基本命令与settings.py设置
2020/02/06 Python
python实现拼图小游戏
2020/02/22 Python
使用Jupyter notebooks上传文件夹或大量数据到服务器
2020/04/14 Python
python计算auc的方法
2020/09/09 Python
印度尼西亚最大的电商平台:Tokopedia(印尼版淘宝)
2017/12/02 全球购物
英国浴室洗脸盆购物网站:Click Basin
2018/06/08 全球购物
司法局火灾防控方案
2014/06/05 职场文书
优秀毕业生找工作自荐信
2014/06/23 职场文书
工作经常出错的检讨书
2014/09/13 职场文书
2015年高三教学工作总结
2015/07/21 职场文书
学生早退检讨书(范文)
2019/08/19 职场文书
详解NodeJS模块化
2021/06/15 NodeJs
Vue3.0中Ref与Reactive的区别示例详析
2021/07/07 Vue.js
Golang原生rpc(rpc服务端源码解读)
2022/04/07 Golang