文章内容太长,在php中如何做文章内容分页!
请各位高手给予指点!
谢谢

解决方案 »

  1.   

    http://www.google.com.hk/search?hl=zh-CN&newwindow=1&safe=strict&client=aff-cs-360se&hs=kXs&q=php+%E9%95%BF%E6%96%87%E7%AB%A0+%E5%88%86%E9%A1%B5&meta=&aq=f&aqi=&aql=&oq=&gs_rfai=
      

  2.   

    通常是手动来分页,例如用<hr/>标签来分页。
    再用正则把内容切割一下。
      

  3.   

    可以用css+js來控制分頁..
    你從數據庫中讀出所有信息
    你固定好顯示的寬和高..用css控制顯示還是隱藏.在用js來做一個分頁假象...一種思路...
      

  4.   

    function multi($num, $perpage, $curpage, $mpurl, $maxpages = 0, $page = 10, $autogoto = TRUE, $simple = FALSE) {
    global $maxpage;
    $multipage = '';
    $seo_prefix=$this->setting['seo_prefix'];
    $seo_suffix=$this->setting['seo_suffix'];
    $mpurl = $seo_prefix.$mpurl.'-';
    $realpages = 1;
    if($num > $perpage) {
    $offset = 2;
    $realpages = @ceil($num / $perpage);
    $pages = $maxpages && $maxpages < $realpages ? $maxpages : $realpages;
    if($page > $pages) {
    $from = 1;
    $to = $pages;
    } else {
    $from = $curpage - $offset;
    $to = $from + $page - 1;
    if($from < 1) {
    $to = $curpage + 1 - $from;
    $from = 1;
    if($to - $from < $page) {
    $to = $page;
    }
    } elseif($to > $pages) {
    $from = $pages - $page + 1;
    $to = $pages;
    }
    }
    $multipage = ($curpage - $offset > 1 && $pages > $page ? '<a href="'.$mpurl.'1"'.$seo_suffix.' >1 ...</a>' : '').
    ($curpage > 1 && !$simple ? '<a href="'.$mpurl.($curpage - 1).$seo_suffix.'" >&lsaquo;&lsaquo;</a>' : '');
    for($i = $from; $i <= $to; $i++) {
    $multipage .= $i == $curpage ? '<span class="gray">'.$i.'</span>' :'<a href="'.$mpurl.$i.$seo_suffix.'" >'.$i.'</a>';
    }
    $multipage .= ($curpage < $pages && !$simple ? '<a href="'.$mpurl.($curpage + 1).$seo_suffix.'" >&rsaquo;&rsaquo;</a>' : '').
    ($to < $pages ? '<a href="'.$mpurl.$pages.$seo_suffix.'" >... '.$realpages.'</a>' : '').
    (!$simple && $pages > $page && !$ajaxtarget ? '<kbd><input type="text" name="custompage" size="3" onkeydown="if(event.keyCode==13) {window.location=\''.$mpurl.'\'+this.value+\''.$seo_suffix.'\'; return false;}" /></kbd>' : ''); $multipage = $multipage ? (!$simple ? '<span class="gray">&nbsp;'.$this->view->lang['commonTotal'].$num.$this->view->lang['commonTotalNum'].'&nbsp;</span>' : '').$multipage : '';
    }
    $maxpage = $realpages;
    return $multipage;
    }
      

  5.   

       //分页函式
       function splitlist($HALT,$LRLIST,$ECHOCNT,$paper,$table,$where,$page_id,$userid){ 
       global $splitstr,$sumcnt;
       if($paper=="" || $sumcnt==""){ 
       $query = "select count(*) as num from $table $where";
       $result = mysql_query($query);
       $row = mysql_fetch_array($result);
       $sumcnt=$row["num"];
       if($sumcnt==0){ 
       nerror("该版内还没有选择发布新闻 !");
        }
       $paper=1;
        }
       $sumpaper=($sumcnt-$sumcnt%$ECHOCNT)/$ECHOCNT;
       if(($sumcnt%$ECHOCNT)!=0) $sumpaper+=1;
       if($sumpaper==1 && $HALT==0) return($where);
       $enwhere=base64_encode(base64_encode($where));
       if(($LRLIST*2+1) < $sumpaper){ 
       if(($paper-$LRLIST) < 2){ 
       $tract=1;
       $sub=$LRLIST*2+1;
        }else if(($paper+$LRLIST) >= $sumpaper){ 
       $tract=$sumpaper-($LRLIST*2);
       $sub=$sumpaper;
        }else{ 
       $tract=$paper-$LRLIST;
       $sub=$paper+$LRLIST;
        }
        }else{ 
       $tract=1;
       $sub=$sumpaper;
        }
       $uppaper=$paper-1;
       $downpaper=$paper+1;
       $startcnt=($paper-1)*$ECHOCNT;
       $where.=" limit ${ startcnt },${ ECHOCNT }";
       if($tract > 1) { $splitstr="【 << "; } 
       else $splitstr="【 << ";
       for($i=$tract;$i<=$sub;$i++){ 
       if ($i!=$paper) $splitstr.="".$i." ";
       else $splitstr.="".$i." ";
        }
       if ($sub!=$sumpaper) $splitstr.=">> 】";
       else $splitstr.=">> 】";
       return($where);
        }
          /*
       #### 检索分页函式 ####
       Int $HALT - 检索结果仅分1页时是否(1/0)显示页码条
       Int $LRLIST - (页码条显示页码数-1)/2
       Int $ECHOCNT - 检索时每页显示记录的数量
       Int $paper - 页数,预提取:$paper=$HTTP_GET_VARS[paper];
       Varchar $table - 数据表名,预附值:$table="db.table";
       Varchar $where - 检索条件,预附值:$where="where field='value'";
       
       Varchar $enwhere - 将原$where进行两次base64_encode()编码后以GET的方式提交
       Varchar $splitstr - 页码条输出字串,执行函式后在相应的位置执行 echo $splitstr;
       
       函式调用前需获取变量 - 
       $paper=$HTTP_GET_VARS[paper];
       $sumcnt=$HTTP_GET_VARS[sumcnt];
       $enwhere=$HTTP_GET_VARS[enwhere];
       
       Return (Varchar $where) - 分页后检索语句的检索条件
       注意:本函式需调用出错处理函式 nerror($error);
       */