基于文本的访客签到簿


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 相关文章推荐
xajax写的留言本
Nov 25 PHP
PHP获取网卡地址的代码
Apr 09 PHP
使用zend studio for eclipse不能激活代码提示功能的解决办法
Oct 11 PHP
PHP IN_ARRAY 函数使用注意事项
Jul 24 PHP
PHP爆绝对路径方法收集整理
Sep 17 PHP
解析PHP汉字转换拼音的类
Jun 18 PHP
php使用GeoIP库实例
Jun 27 PHP
PHP获取文件夹大小函数用法实例
Jul 01 PHP
YII视图整合kindeditor扩展的方法
Jul 13 PHP
PHP+mysql+ajax轻量级聊天室实现方法详解
Oct 17 PHP
PHP设计模式之数据访问对象模式(DAO)原理与用法实例分析
Dec 12 PHP
Laravel登录失败次数限制的实现方法
Aug 26 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
thinkphp使用literal防止模板标签被解析的方法
2014/11/22 PHP
php开发工具有哪五款
2015/11/09 PHP
详解yii2实现分库分表的方案与思路
2017/02/03 PHP
原生js 秒表实现代码
2012/07/24 Javascript
jquery插件之信息弹出框showInfoDialog(成功/错误/警告/通知/背景遮罩)
2013/01/09 Javascript
一个网页标题title的闪动提示效果实现思路
2014/03/22 Javascript
学习jQuey中的return false
2015/12/18 Javascript
angularJS 指令封装回到顶部示例详解
2017/01/22 Javascript
原生JS实现简单放大镜效果
2017/02/08 Javascript
基于Vue2.0+ElementUI实现表格翻页功能
2017/10/23 Javascript
JavaScript调用模式与this关键字绑定的关系
2018/04/21 Javascript
React中使用async validator进行表单验证的实例代码
2018/08/17 Javascript
基于Vue实现的多条件筛选功能的详解(类似京东和淘宝功能)
2019/05/07 Javascript
你或许不知道的一些npm实用技巧
2019/07/04 Javascript
layui使用button按钮 点击出现弹层 弹层中加载表单的实例
2019/09/04 Javascript
JavaScript布尔运算符原理使用解析
2020/05/06 Javascript
swiperjs实现导航与tab页的联动
2020/12/13 Javascript
Python 功能和特点(新手必学)
2015/12/30 Python
利用Python获取操作系统信息实例
2016/09/02 Python
python去除字符串中的换行符
2017/10/11 Python
Django model 中设置联合约束和联合索引的方法
2019/08/06 Python
pytorch之添加BN的实现
2020/01/06 Python
Pytest mark使用实例及原理解析
2020/02/22 Python
python继承threading.Thread实现有返回值的子类实例
2020/05/02 Python
Django bulk_create()、update()与数据库事务的效率对比分析
2020/05/15 Python
去除python中的字符串空格的简单方法
2020/12/22 Python
自定义html标记替换html5新增元素
2008/10/17 HTML / CSS
html5指南-1.html5全局属性(html5 global attributes)深入理解
2013/01/07 HTML / CSS
压铸汽车模型收藏家:Diecastmodelswholesale.com
2016/12/21 全球购物
美国紧身牛仔裤品牌:NYDJ
2017/05/24 全球购物
初中地理教学反思
2014/01/11 职场文书
法务专员岗位职责
2015/02/14 职场文书
幼儿园家长工作总结2015
2015/04/25 职场文书
React配置子路由的实现
2021/06/03 Javascript
详细聊聊关于Mysql联合查询的那些事儿
2021/10/24 MySQL
vue实力踩坑之push当前页无效
2022/04/10 Vue.js