求个具体的php+mysql分页-----不要网上搜的 一、从a页点击在b页进行分页显示二、分页显示的代码三、有首页 上页 1 2 3 4 5 下页 末页的功能四、翻页后能正常显示内容就是点击上页下页能正常显示数据库的数据(a页传来的参数不丢失), 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 class page{ private $_page_num;//总页数 private $_page_size=10;//每页条数 private $_page_url;//url链接 private $_limit;//limit1 private $_page_total;//总分页数 private $_page;//分页所传分页值 private $_list_size=10;//这为第二种分页方法显示条数 private $_page_sort=3;//分页两边距离 public function __construct($_total,$_pagesize,$_list_size){ $this->_page_size=$_pagesize; $this->_page_total=$_total; $this->_list_size = $_list_size; $this->_page_num = round($this->_page_total/$this->_page_size); $this->_page=$this->getnum(); $this->_limit="limit".$this->_page*$this->_page_size.",".$this->_page_total=$_total; $this->_page_url=$this->seturl(); } /** * 获取当前页数 * Enter description here ... */ private function getnum(){ if(isset($_GET['page'])){ if(is_numeric($_GET['page'])){ if($_GET['page']>0){ if(ceil($_GET['page'])>=1 && ceil($_GET['page'])<=$this->_page_num){ return ceil($_GET['page']); }elseif(ceil($_GET['page'])>$this->_page_num){ return $this->_page_num; } }else{ return 1; } }else{ return 1; } }else{ return 1; } } /** * 转换链接 * Enter description here ... */ private function seturl(){ $_url=$_SERVER['REQUEST_URI'];//获取请求地址 $_par=parse_url($_url);//解析url if(isset($_par['query'])){//判断是否存在aa=bb这种格式 $_url=parse_str($_par['query'],$_query);//重构url unset($_query['page']); $_url=$_par['path'].'?'.http_build_query($_query); }else{ $_url=$_url.'?'; } return $_url; } public function limit(){ return $this->_limit; } public function pagenum(){ return $this->_page_num; } /* public function page(){ return $this->_page; } public function pageurl(){ return $this->_page_url; } */ private function first(){ return "<a href=".$this->_page_url."&page=1>首页</a>"; } private function end(){ return "<a href=".$this->_page_url."&page=".$this->_page_num.">尾页</a>"; } private function prev(){ if($this->_page>1){ return "<a href=".$this->_page_url."&page=".($this->_page-1).">上一页</a>"; }else{ return '上一页'; } } public function next(){ if($this->_page<$this->_page_num){ return "<a href=".$this->_page_url."&page=".($this->_page+1).">下一页</a>"; }else{ return '下一页'; } } private function pagelist_1(){ $_page=''; for($i=1;$i<=$this->_page_num;$i++){ $_page.="<a href=".$this->_page_url."&page=".$i.">".$i."</a>"; } return $_page; } private function pagelist_2(){ $_page=''; $_page_start=floor($this->_page/$this->_list_size); $usenum=$this->check(($_page_start*$this->_list_size+10),$this->_page_num); for($i=$_page_start*$this->_list_size+1;$i<=$usenum;$i++){ $_page.="<a href=".$this->_page_url."&page=".$i.">".$i."</a>"; } return $_page; } private function pagelist_3(){ $page=''; for($i=$this->_page-$this->_page_sort;$i<=$this->_page-1;$i++){ if($i<1)continue; $page.="<a href=".$this->_page_url."&page=".$i.">".$i."</a>".' '; } $page.="<a href=".$this->_page_url."&page=".$this->_page.">".$this->_page."</a>".' '; for($i=$this->_page+1;$i<=$this->_page+$this->_page_sort;$i++){ if($i>$this->_page_num)break; $page.="<a href=".$this->_page_url."&page=".$i.">".$i."</a>".' '; } return $page; } /** * 没有修正的分页列表 * Enter description here ... */ private function pagelist_4(){ $page=''; for($i=$this->_page-$this->_page_sort;$i<=$this->_page-1;$i++){ if($i<1)continue; $page.="<a href=".$this->_page_url."&page=".$i.">".$i."</a>".' '; } $page.="<a href=".$this->_page_url."&page=".$this->_page.">".$this->_page."</a>".' '; for($i=$this->_page+1;$i<=$this->_page+$this->_page_sort;$i++){ if($i>$this->_page_num)break; $page.="<a href=".$this->_page_url."&page=".$i.">".$i."</a>".' '; } //+1和-1为了排除上一页显示的值,不然会重复 if($this->_page>($this->_page_sort+1) && $this->_page<($this->_page_num-$this->_page_sort)){ $page="<a href=".$this->_page_url."&page=".($this->_page-$this->_page_sort*2-1).">...</a>".$page."<a href=".$this->_page_url."&page=".($this->_page+$this->_page_sort*2+1).">...</a>"; } return $page; } private function check($num1,$num2){ if($num1>$num2){ return $num2; }else{ return $num1; } } public function showpage($_type){ $_page=''; $_page.=$this->first();//首页 switch($_type){ case '1': $_page.=$this->pagelist_1();//原始页面列表 break; case '2': $_page.=$this->pagelist_2();//原始页面列表 break; case '3': $_page.=$this->pagelist_3();//原始页面列表 break; case '4': $_page.=$this->pagelist_4();//原始页面列表 break; default: $_page.=$this->pagelist_3();//默认原始页面列表 } $_page.=$this->end();//尾页 $_page.=$this->prev();//上一页 $_page.=$this->next();//下一页 return $_page; }}// $page = new page(220,10,10);// echo $page->showpage('4');这个好像可以用 js encodeURIComponent PHP这IF语句,哪里错了? php开发用框架到底有没有必要呀? php配置问题?? php随机循环输出数字~~ 关于存储和显示图片的问题!在线等 有没有人用PHP开发过语音视频聊天室? 我装了wincvs,它提示我装python,装了后怎么还是不行啊? 能用php作类似排行榜的程序吗?给个例子新手 下载了apache1.3.22.zip文件后在98上安装apache server,解压后根本没有安装的执行文件嘛。 一个比较简单的问题 php ,验证码图片,乱码
private $_page_num;//总页数
private $_page_size=10;//每页条数
private $_page_url;//url链接
private $_limit;//limit1
private $_page_total;//总分页数
private $_page;//分页所传分页值
private $_list_size=10;//这为第二种分页方法显示条数
private $_page_sort=3;//分页两边距离
public function __construct($_total,$_pagesize,$_list_size){
$this->_page_size=$_pagesize;
$this->_page_total=$_total;
$this->_list_size = $_list_size;
$this->_page_num = round($this->_page_total/$this->_page_size);
$this->_page=$this->getnum();
$this->_limit="limit".$this->_page*$this->_page_size.",".$this->_page_total=$_total;
$this->_page_url=$this->seturl();
}
/**
* 获取当前页数
* Enter description here ...
*/
private function getnum(){
if(isset($_GET['page'])){
if(is_numeric($_GET['page'])){
if($_GET['page']>0){
if(ceil($_GET['page'])>=1 && ceil($_GET['page'])<=$this->_page_num){
return ceil($_GET['page']);
}elseif(ceil($_GET['page'])>$this->_page_num){
return $this->_page_num;
}
}else{
return 1;
}
}else{
return 1;
}
}else{
return 1;
}
}
/**
* 转换链接
* Enter description here ...
*/
private function seturl(){
$_url=$_SERVER['REQUEST_URI'];//获取请求地址
$_par=parse_url($_url);//解析url
if(isset($_par['query'])){//判断是否存在aa=bb这种格式
$_url=parse_str($_par['query'],$_query);//重构url
unset($_query['page']);
$_url=$_par['path'].'?'.http_build_query($_query);
}else{
$_url=$_url.'?';
}
return $_url;
}
public function limit(){
return $this->_limit;
}
public function pagenum(){
return $this->_page_num;
}
/*
public function page(){
return $this->_page;
}
public function pageurl(){
return $this->_page_url;
}
*/
private function first(){
return "<a href=".$this->_page_url."&page=1>首页</a>";
}
private function end(){
return "<a href=".$this->_page_url."&page=".$this->_page_num.">尾页</a>";
}
private function prev(){
if($this->_page>1){
return "<a href=".$this->_page_url."&page=".($this->_page-1).">上一页</a>";
}else{
return '上一页';
}
}
public function next(){
if($this->_page<$this->_page_num){
return "<a href=".$this->_page_url."&page=".($this->_page+1).">下一页</a>";
}else{
return '下一页';
}
}
private function pagelist_1(){
$_page='';
for($i=1;$i<=$this->_page_num;$i++){
$_page.="<a href=".$this->_page_url."&page=".$i.">".$i."</a>";
}
return $_page;
}
private function pagelist_2(){
$_page='';
$_page_start=floor($this->_page/$this->_list_size);
$usenum=$this->check(($_page_start*$this->_list_size+10),$this->_page_num);
for($i=$_page_start*$this->_list_size+1;$i<=$usenum;$i++){
$_page.="<a href=".$this->_page_url."&page=".$i.">".$i."</a>";
}
return $_page;
}
private function pagelist_3(){
$page='';
for($i=$this->_page-$this->_page_sort;$i<=$this->_page-1;$i++){
if($i<1)continue;
$page.="<a href=".$this->_page_url."&page=".$i.">".$i."</a>".' ';
}
$page.="<a href=".$this->_page_url."&page=".$this->_page.">".$this->_page."</a>".' ';
for($i=$this->_page+1;$i<=$this->_page+$this->_page_sort;$i++){
if($i>$this->_page_num)break;
$page.="<a href=".$this->_page_url."&page=".$i.">".$i."</a>".' ';
}
return $page;
}
/**
* 没有修正的分页列表
* Enter description here ...
*/
private function pagelist_4(){
$page='';
for($i=$this->_page-$this->_page_sort;$i<=$this->_page-1;$i++){
if($i<1)continue;
$page.="<a href=".$this->_page_url."&page=".$i.">".$i."</a>".' ';
}
$page.="<a href=".$this->_page_url."&page=".$this->_page.">".$this->_page."</a>".' ';
for($i=$this->_page+1;$i<=$this->_page+$this->_page_sort;$i++){
if($i>$this->_page_num)break;
$page.="<a href=".$this->_page_url."&page=".$i.">".$i."</a>".' ';
}
//+1和-1为了排除上一页显示的值,不然会重复
if($this->_page>($this->_page_sort+1) && $this->_page<($this->_page_num-$this->_page_sort)){
$page="<a href=".$this->_page_url."&page=".($this->_page-$this->_page_sort*2-1).">...</a>".$page."<a href=".$this->_page_url."&page=".($this->_page+$this->_page_sort*2+1).">...</a>";
}
return $page;
}
private function check($num1,$num2){
if($num1>$num2){
return $num2;
}else{
return $num1;
}
}
public function showpage($_type){
$_page='';
$_page.=$this->first();//首页
switch($_type){
case '1':
$_page.=$this->pagelist_1();//原始页面列表
break;
case '2':
$_page.=$this->pagelist_2();//原始页面列表
break;
case '3':
$_page.=$this->pagelist_3();//原始页面列表
break;
case '4':
$_page.=$this->pagelist_4();//原始页面列表
break;
default:
$_page.=$this->pagelist_3();//默认原始页面列表
}
$_page.=$this->end();//尾页
$_page.=$this->prev();//上一页
$_page.=$this->next();//下一页
return $_page;
}
}
// $page = new page(220,10,10);
// echo $page->showpage('4');
这个好像可以用