最简单的php分页函数源码
指定条件信息数量检索函数
<?
//指定条件信息数量检索函数
function rec_exist($table,$where){
$query="select count(*) as num from $table ".$where;
$result=mysql_query($query) or die(nerror(1));
$rowcount=mysql_fetch_array($result);
$num=$rowcount["num"];
if ($num==0){
return false;
}
return $num;
}
?>php分页函数
//分页函数 php学习网提供www.zzzyk.com
function splitlist($HALT,$LRLIST,$ECHOCNT,$易做图,$table,$where,$page_id,$userid){
global $splitstr,$sumcnt;
if($易做图=="" || $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("该版内还没有选择发布新闻 !");
}
$易做图=1;
}
$sum易做图=($sumcnt-$sumcnt%$ECHOCNT)/$ECHOCNT;
if(($sumcnt%$ECHOCNT)!=0) $sum易做图+=1;
if($sum易做图==1 && $HALT==0) return($where);
$enwhere=base64_encode(base64_encode($where));
if(($LRLIST*2+1) < $sum易做图){
if(($易做图-$LRLIST) < 2){
$tract=1;
$sub=$LRLIST*2+1;
}else if(($易做图+$LRLIST) >= $sum易做图){
$tract=$sum易做图-($LRLIST*2);
$sub=$sum易做图;
}else{
$tract=$易做图-$LRLIST;
$sub=$易做图+$LRLIST;
}
}else{
$tract=1;
$sub=$sum易做图;
}
$up易做图=$易做图-1;
$down易做图=$易做图+1;
$startcnt=($易做图-1)*$ECHOCNT;
$where.=" limit ${ startcnt },${ ECHOCNT }";
if($tract > 1) { $splitstr="【 << "; }
else $splitstr="【 << ";
for($i=$tract;$i<=$sub;$i++){
if ($i!=$易做图) $splitstr.="".$i." ";
else $splitstr.="".$i." ";
}
if ($sub!=$sum易做图) $splitstr.=">> 】";
else $splitstr.=">> 】";
return($where);
}
?>关于分页函数的使用说明
/*
#### 检索分页函数 ####
Int $HALT - 检索结果仅分1页时是否(1/0)显示页码条
Int $LRLIST - (页码条显示页码数-1)/2
Int $ECHOCNT - 检索时每页显示记录的数量
Int $易做图 - 页数,预提取:$易做图=$HTTP_GET_VARS[易做图];
Varchar $table - 数据表名,预附值:$table="db.table";
Varchar $where - 检索条件,预附值:$where="where field='value'";
Varchar $enwhere - 将原$where进行两次base64_encode()编码后以GET的方式提交
Varchar $splitstr - 页码条输出字串,执行函数后在相应的位置执行 echo $splitstr;
函数调用前需获取变量 -
$易做图=$HTTP_GET_VARS[易做图];
$sumcnt=$HTTP_GET_VARS[sumcnt];
$enwhere=$HTTP_GET_VARS[enwhere];
Return (Varchar $where) - 分页后检索语句的检索条件
注意:本函数需调用出错处理函数 nerror($error);
*/
?>