pageft.php
---------------------------------------------------------------
<style type="text/css">
<!--
#select{
background-color:#6e6e6e;
border: 1px solid #999999;
color:#FFFFFF;
font-family:Arial, Helvetica, sans-serif;
font-size:11px;
}
#select2{
color:#626262;
font-family:Arial, Helvetica, sans-serif;
font-size:11px;
}
#select3{
color:#000;
font-family:Arial, Helvetica, sans-serif;
font-size:11px;
}
#select4{
background-color:#e7e7e7;
font-family:Arial, Helvetica, sans-serif;
font-size:11px;
width:25px;
}
-->
</style>
<?
//***QQ:474936159******
//***msn:taozi05java3@163.com****
//***homepage:xiaonei.com/taozi05***
//别相信一切输进来的,都要判断下。是不是真的。
function getpage($sql,$page_size=20)//每页20和传过来的sql
{
global $page,$totalpage,$sums; //out param
$page = intval(addslashes($_GET["page"]));//传参数。
//自己过滤下
//判断是不是数字
if(!is_numeric($page)){
echo "<script>alert('Input is invalid');history.back();</script>";
exit;
}
//过滤。。
if(eregi("select|insert|update|delete|/'|///*|/*|/././/|/.//|union|into|load_file|outfile|for|while|when", $page)){
echo "<script>alert('Input is invalid');history.back();</script>";
exit;
}
$pagesql = strstr($sql," from ");//找到第一个FROM的。
$pagesql = "select count(*) as ids ".$pagesql;//查询sql
$result = @mysql_query($pagesql);
if($rs = mysql_fetch_array($result)) $sums = $rs[0];//得到总数
$totalpage = ceil($sums/$page_size);//有小数就进一位。
if((!$page)||($page<1)) $page=1;//判断是不是有第一页。
$startpos = ($page-1)*$page_size; //计算起点。
$sql .=" limit $startpos,$page_size ";//限制起点并要求一页20
return $sql;
}
function showbar($string="")
{
global $page,$totalpage;
//对参数进行过滤。
//$strimg = "vid=75"; 传递记录值
//添加斜线,转义某些特殊字符
$string=addslashes($string);
// return $string;
//过滤下
//过滤。。你好呀。呵呵,没事了
if(eregi("select|insert|update|delete|/'|///*|/*|/././/|/.//|union|into|load_file|outfile|for|while|when", $string)){
echo "<script>alert('Input is invalid');history.back();</script>";
exit;
}
$out="Total <font color='red' size='2'><b>".$totalpage."</b></font> pages ";
$linkNum =8;
$start = ($page-round($linkNum/2))>0 ? ($page-round($linkNum/2)) : "1";
$end = ($page+round($linkNum/2))<$totalpage ? ($page+round($linkNum/2)) : $totalpage;
$prestart=$start-1;
$nextend=$end+1;
if($page<>1)
$out .= "<a href='?page=1&&".$string."'title=first_page id='select2'>first page</a> ";
if($start>1)
$out.="<a href='?page=".$prestart."&&".$string."' id='select2' >..<<</a> ";
$t='';//初始化。
//循环,这样,如果每页5条记录,则当点第6页时,6的左右两边各有4个页码,就像这样:
//2345 6 78910
for($t=$start;$t<=$end;$t++)
{
$out .= ($page==$t) ? "<font id='select'><b>".$t."</b></font> " : "<a href='?page=$t&&".$string."' id='select3'>$t</a> ";
}
if($end<$totalpage)
$out.="<a href='?page=".$nextend."&&".$string."' id='select2'>>>..</a>";
if($page<>$totalpage)
//下一页
$out .= " <a href='?page=".$totalpage."&&".$string."' title=last_page id='select2'>last page</a>";
if($_SERVER['REQUEST_METHOD']=="POST"){
$gopage=intval($_POST['go_page']);
if(!is_numeric($gopage)||$gopage==""){
$gopage=1;
}
?>
<?
}
//这个是转到,需要受到输入的。
// $out .=" Goto";
// $out .= "<input id='select4' type='text' size='2' value='".intval($_GET['page'])."'onBlur=/"";
// $out .= "javascript:if(isNaN(parseInt(this.value)) || parseInt(this.value)";
// $out .= "> ".$totalpage."){alert('You can only enter the figures in 1 ~ ".$totalpage;
// $out .= ", please re-enter'); return false;}location.href='?page='+parseInt(this.value)+'&&".$string."'";
// $out .= "/" >";
// $out .= "page";
return $out;
}
//例子
/*require_once("pageft.php");
$sql="select * from table";
$querysql=getpage($sql);
mysql_query("set names utf-8");
$result=mysql_query($querysql);
while($arr=mysql_fetch_array($result)){
//你想要输出的东西,
}
//分页导航显示,默认是为空的,如果有参数,你自己加吧。
echo showbar("");
*///ok了,没了,有问题找我啦。
?>
---------------------------------------------------------------
<style type="text/css">
<!--
#select{
background-color:#6e6e6e;
border: 1px solid #999999;
color:#FFFFFF;
font-family:Arial, Helvetica, sans-serif;
font-size:11px;
}
#select2{
color:#626262;
font-family:Arial, Helvetica, sans-serif;
font-size:11px;
}
#select3{
color:#000;
font-family:Arial, Helvetica, sans-serif;
font-size:11px;
}
#select4{
background-color:#e7e7e7;
font-family:Arial, Helvetica, sans-serif;
font-size:11px;
width:25px;
}
-->
</style>
<?
//***QQ:474936159******
//***msn:taozi05java3@163.com****
//***homepage:xiaonei.com/taozi05***
//别相信一切输进来的,都要判断下。是不是真的。
function getpage($sql,$page_size=20)//每页20和传过来的sql
{
global $page,$totalpage,$sums; //out param
$page = intval(addslashes($_GET["page"]));//传参数。
//自己过滤下
//判断是不是数字
if(!is_numeric($page)){
echo "<script>alert('Input is invalid');history.back();</script>";
exit;
}
//过滤。。
if(eregi("select|insert|update|delete|/'|///*|/*|/././/|/.//|union|into|load_file|outfile|for|while|when", $page)){
echo "<script>alert('Input is invalid');history.back();</script>";
exit;
}
$pagesql = strstr($sql," from ");//找到第一个FROM的。
$pagesql = "select count(*) as ids ".$pagesql;//查询sql
$result = @mysql_query($pagesql);
if($rs = mysql_fetch_array($result)) $sums = $rs[0];//得到总数
$totalpage = ceil($sums/$page_size);//有小数就进一位。
if((!$page)||($page<1)) $page=1;//判断是不是有第一页。
$startpos = ($page-1)*$page_size; //计算起点。
$sql .=" limit $startpos,$page_size ";//限制起点并要求一页20
return $sql;
}
function showbar($string="")
{
global $page,$totalpage;
//对参数进行过滤。
//$strimg = "vid=75"; 传递记录值
//添加斜线,转义某些特殊字符
$string=addslashes($string);
// return $string;
//过滤下
//过滤。。你好呀。呵呵,没事了
if(eregi("select|insert|update|delete|/'|///*|/*|/././/|/.//|union|into|load_file|outfile|for|while|when", $string)){
echo "<script>alert('Input is invalid');history.back();</script>";
exit;
}
$out="Total <font color='red' size='2'><b>".$totalpage."</b></font> pages ";
$linkNum =8;
$start = ($page-round($linkNum/2))>0 ? ($page-round($linkNum/2)) : "1";
$end = ($page+round($linkNum/2))<$totalpage ? ($page+round($linkNum/2)) : $totalpage;
$prestart=$start-1;
$nextend=$end+1;
if($page<>1)
$out .= "<a href='?page=1&&".$string."'title=first_page id='select2'>first page</a> ";
if($start>1)
$out.="<a href='?page=".$prestart."&&".$string."' id='select2' >..<<</a> ";
$t='';//初始化。
//循环,这样,如果每页5条记录,则当点第6页时,6的左右两边各有4个页码,就像这样:
//2345 6 78910
for($t=$start;$t<=$end;$t++)
{
$out .= ($page==$t) ? "<font id='select'><b>".$t."</b></font> " : "<a href='?page=$t&&".$string."' id='select3'>$t</a> ";
}
if($end<$totalpage)
$out.="<a href='?page=".$nextend."&&".$string."' id='select2'>>>..</a>";
if($page<>$totalpage)
//下一页
$out .= " <a href='?page=".$totalpage."&&".$string."' title=last_page id='select2'>last page</a>";
if($_SERVER['REQUEST_METHOD']=="POST"){
$gopage=intval($_POST['go_page']);
if(!is_numeric($gopage)||$gopage==""){
$gopage=1;
}
?>
<?
}
//这个是转到,需要受到输入的。
// $out .=" Goto";
// $out .= "<input id='select4' type='text' size='2' value='".intval($_GET['page'])."'onBlur=/"";
// $out .= "javascript:if(isNaN(parseInt(this.value)) || parseInt(this.value)";
// $out .= "> ".$totalpage."){alert('You can only enter the figures in 1 ~ ".$totalpage;
// $out .= ", please re-enter'); return false;}location.href='?page='+parseInt(this.value)+'&&".$string."'";
// $out .= "/" >";
// $out .= "page";
return $out;
}
//例子
/*require_once("pageft.php");
$sql="select * from table";
$querysql=getpage($sql);
mysql_query("set names utf-8");
$result=mysql_query($querysql);
while($arr=mysql_fetch_array($result)){
//你想要输出的东西,
}
//分页导航显示,默认是为空的,如果有参数,你自己加吧。
echo showbar("");
*///ok了,没了,有问题找我啦。
?>