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

在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"]等

(0)

相关推荐

  • 点图片上一页下一页翻页效果

    <script language="javascript" defer> var zhang=2 function next(){ if(zhang==7){ alert("这已经是最后一张了!") zhang=6 } document.getElementById("tu").src=zhang+".jpg" text.innerHTML="当前是第"+zhang+"张图片"

  • 通过MySQL优化Discuz!的热帖翻页的技巧

    写在前面:discuz!作为首屈一指的社区系统,为广大站长提供了一站式网站解决方案,而且是开源的(虽然部分代码是加密的),它为这个垂直领域的行业发展作出了巨大贡献.尽管如此,discuz!系统源码中,还是或多或少有些坑.其中最著名的就是默认采用MyISAM引擎,以及基于MyISAM引擎的抢楼功能,session表采用memory引擎等,可以参考后面几篇历史文章.本次我们要说说discuz!在应对热们帖子翻页逻辑功能中的另一个问题. 在我们的环境中,使用的是 MySQL-5.6.6 版本. 在查看

  • PHP 翻页 实例代码

    复制代码 代码如下: <?php class Page { private $pageSize;//每一页多少行 private $absolutePage;//当前页 private $pageCount;//总页码数 private $totalNum;//总行数 private $prePage;//上一页 private $nextPage; //下一页 private $sqlStr; private $baseUrl; //不带GET参数的URL get传输网址 function _

  • PHP翻页跳转功能实现方法

    我们都知道用php+mysql在web 页实现数据库资料全部显示是非常简单而有趣的,数据库资料很少的情况下页面显示还是让人满意的,但是当数据库资料非常多的情况下,页面的显示情况将会变的非常糟糕,下面就来介绍一下如何实现当前页面数据资料显示数量及如何实现动态的翻转功能. 这里将介绍两种翻页显示功能的实现: 先介绍一下在翻页中用到的数据库语法: mysql_query("select * from table order by id desc"); 这条数据库语句再熟悉不过了,是用来搜索记

  • MongoDB快速翻页的方法

    翻阅数据是MongoDB最常见的操作之一.一个典型的场景是需要在你的用户界面中显示你的结果.如果你是批量处理的数据,同样重要的是要让你的分页策略正确,以便你的数据处理可以规模化. 接下来,让我们通过一个例子来看在MongoDB中翻阅数据的不同方式.在这个例子中,我们有一个CRM数据库的用户数据,我们需要通过翻阅浏览和在同一时间显示10个用户.所以实际上,我们的页面大小是10.下方是我们的用户文档的结构: { _id, name, company, state } 方法一:Using skip()

  • 在图片上显示左右箭头类似翻页的代码

    使用JS实现在图片上显示左右箭头的翻页代码,预览效果网址:http://www.keleyi.com/keleyi/phtml/picnext/ 本实例使用了javascript的onmousemove 事件.onmousemove 事件会在鼠标指针移动时发生. 语法 onmousemove="SomeJavaScriptCode" SomeJavaScriptCode是必需参数.规定该事件发生时执行的 JavaScript. 下面是核心代码(完整代码请在效果页面查看源代码): 复制代

  • PHP 长文章分页函数 带使用方法,不会分割段落,翻页在底部

    复制代码 代码如下: <?php function ff_page($content,$page) { global $expert_id; $PageLength = 2000; //每页字数 $CLength = strlen($content); $PageCount = floor(($CLength / $PageLength)) + 1; //计算页数 $PageArray=array(); $Seperator = array("\n","\r"

  • php实现的仿阿里巴巴实现同类产品翻页

    如果左边的记录条数小于$space(页码区段)的值,页码$start从1开始向右增值.如果左则的记录条数多于$left(左右各显示页数)的值,$start将从左边记录数减去$left值开始记数. 复制代码 代码如下: <?php /** 实现同类产品翻页 **/ class pager { protected $space; protected $left; protected $DB; protected $pageName; public function setSpace($num) {

  • 如何编写翻页函数?

    page.inc<% Sub ShowPageBar(TotalPage,CurPage,strUrl) ' 参数TotalPage:全部页数;CurPage:当前页数;strUrl:翻页使用的连接地址. DIM strPage CurPage=GetValidPageNO(TotalPage,CurPage) Response.Write "<TABLE WIDTH=''100%''>" Response.Write "<tr><td w

  • 解析Android中实现滑动翻页之ViewFlipper的使用详解

    1)View切换的控件-ViewFlipper介绍 ViewFilpper类继承于ViewAnimator类.而ViewAnimator类继承于FrameLayout. 查看ViewAnimator类的源码可以看出此类的作用主要是为其中的View切换提供动画效果.该类有如下几个和动画相关的方法. setInAnimation:设置View进入屏幕时候使用的动画.该方法有两个重载方法,即可以直接传入Animation对象,也可以传入定义的Animation文件的resourceID. setOut

随机推荐