• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

php中文本数据翻页(留言本翻页)

发布: 2007-7-01 15:06 | 作者: admin | 来源: | 查看: 12次 | 进入软件测试论坛讨论

领测软件测试网 在mysq中介绍翻页的文章不少,而文本数据表格式的翻页介绍的很少,这里我就简单的说一下翻页

主要介绍以下翻页思想
1、留言本的翻页
2、文本论坛的翻页

————————————————————————
留言本的翻页:
——————————————————————————————
这个在文本数据表中的翻页是最简单的翻页,这样说明一下

golbal file
    Data.dat    ---    NOTE FILE USE
    user.dat    ---     Forum File use
Data.dat
_______________________________________________________________________
[1]    [POSTUSER]     [TITLE]        [MEM]        [POSTTIME]    [IP]
[2]    [POSTUSER]     [TITLE]        [MEM]        [POSTTIME]    [IP]
[3]    [POSTUSER]     [TITLE]        [MEM]        [POSTTIME]    [IP]
[4]    [POSTUSER]     [TITLE]        [MEM]        [POSTTIME]    [IP]
[5]    [POSTUSER]     [TITLE]        [MEM]        [POSTTIME]    [IP]

说明:
     其中的[1,2,3,4,5....]是我自己添加进去的,主要是为了大家更好的理解

index.php source:.

__________________________________________________

---====BOF====---
<?
$file            =        "data.dat";        //数据文件
if(file_exits($file)){                        //容错处理,防止无数据文件存在
    $fp=fopen($file,"w+");
    fclose($fp);
    unset($fp);
}
$listnumber        =        20;            //每页显示条数
$fp            =        file($file);        //读取数据到内容中
$number            =        count($fp);        //计算总数据量
$pagenumber        =        floor($number/$listnumber)+1;
if($number<1){
    print "暂时无记录,欢迎留言";
    /*+--------------------------------+
          |在这里打印FORM表单或连接到表但的|
          | URL,               |
          +--------------------------------+*/
}else{
    if(empty($_POST["page"])){                //这段IF...ELSE...是为了兼容php4.20的默认设置,防止出现无效的全局变量而写的
        $page        =    0;            //因为是从数据文本读出来的,保存在数组中,有个O下标
    }else{
        $page        =    $_POST["page"]
    }

    if($page<0 || $page>pagenumber){            //检错处理,当页面参数跳出总页面或小于首页(0)的时候,将返回到第一页
        $page=0;
    }

    $startnote    =    $page*$listnumber;        //开始记录位置
    $endnote    =    $startnote+$listnumber;        //结束记录位置

    //for($int_a=$startnote;$int_a<$endnote;$int_a++){    //排序显示类似ASC模式

    pirnt "<table>"

    for($int_a=$endnote;$int_a>=$startnote;$int_a--){    //排序显示类似DESC模式
        $info=explode("\t",$fp[$int-a]);        //切割数据获得每条记录的详细数据我这里是用了一个TAB键分割
        print "<tr><td>用户:$info[1] 标题$info[2] 发言内容:$info[3] 发布时间:$info[4] IP:$info[5]";
    }

    $prevpage    =    $page-1;            //上一页的PAGE数
    $nextpage    =    $page+1;            //下一页的page数

    print "<tr><td>
    <a href=\"$_SERVER["PHP_SELF"]?page=0\">首页</a>
    <a href=\"$_SERVER["PHP_SELF"]?page=$prevpage\">上一页</a>
    <a href=\"$_SERVER["PHP_SELF"]?page=$nextpage\">下一页</a>
    <a href=\"$_SERVER["PHP_SELF"]?page=$pagenumber\">尾页</a>
    </table>";                        //这里您可以直接将页面的检测加到这里,那样给别人看的是舒服的,但是效果是一样的
                                //例如:这里有可能出现20页出现        <a href="index.php?page=21">下一页</a>    或<a href="index.php?page=-1">
}
?>
---====EOF====---


写的仓促,另外中间有不少因为考虑到使用PHP4.20所以就改变了一下,比如说PHP_SELF已经采用_SERVER["PHP_SELF"]等,详细的参照一下精华区里的中文说明看看就名了

以上为文本保存留言本数据的翻页功能说明,具体的关于到文本论坛的翻页还要考虑的更详细点,如果时间来及,我会尽快写出来的....

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网