search
HomeBackend DevelopmentPHP Tutorial 急好看实用的PHP+JS分页!效果类似百度

急!求一个好看实用的PHP+JS分页!效果类似百度
急!求一个好看实用的PHP+JS分页!效果类似百度!

  效果如下:

1 2 3 4 5 6 7 8 9 10 下一页 共有?页

当不是第一页的时候,显示如下:

上一页 1 2 3 4 5 6 7 8 9 10 下一页 共有 ?页

其中,用“另一种颜色标记出当前显示的是哪一页”

该分页代码能跟MYSQL数据库连接使用,实现像百度的分页效果!

  小弟是新手,都吧知道如何下手,请各位大哥帮帮忙!谢谢!

------解决方案--------------------

PHP code

function _setPage($baseUrl, $total, $start, $limit, $parm="")
{
  if($total != 0) $pages = $total/$limit;  else $pages = 0;
   if(empty($start)) $start=0;
   if(empty($limit)) $limit=20;   
   if($start>$total)$start=$total-$limit;
   if($start100) $limit=100;
   
   //$start = $start - $top;
   $showpage = 10;
   $currentpage=$start/$limit;
   if($currentpage $total/$limit ){
        $pageno=$currentpage -5;
     }else{
        $pageno=$currentpage - 5;
     }
     $i=$pageno*$limit;
   }
   if($total==0) $currentpage = -1;
   $strPage =  "总[" . ($currentpage + 1) . "/" . ceil($pages) . "]页  ";
   $page=0;
   $strPage .= "";

   if($start/$limit > $showpage)
   {
        $tmp = ($pageno - 1)* $limit;
        $strPage.= "<a href="%24baseUrl&%24parm&start=%22.(%24tmp).%22&limit=%24limit">";
   }
   
   while($i ". ($pageno + 1) ." ";
      }
      else
      {
        $strPage .= "</a><a href="%24baseUrl&%24parm&start=%22.(%24pageno*%24limit).%22&limit=%24limit">".($pageno + 1)."</a> ";
      }
      $pageno++;
      $page++;
      $i+=$limit;

      if($page > $showpage)
      {
        $strPage.= "<a href="%24baseUrl&%24parm&start=%22.(%24pageno*%24limit).%22&limit=%24limit">>></a>";
        break;
      }
    }
    
    if($start>0){
        $strPage .= " <a href="%24baseUrl?%24parm&start=0&limit=%24limit">首页</a> ";
    }else{
        $strPage .= " 首页 ";
    }

    if($start>0){
        $strPage .=  " <a href="%24baseUrl&%24parm&start=%22.(%24start-%24limit).%22&limit=%24limit">上一页</a> ";
    }
    if($start+$limit下一页 ";
    }

    if($start+$limit尾页 ";
    }else{
      $strPage .= " 尾页 ";
    }
    return $strPage;
}
<br><font color="#e78608">------解决方案--------------------</font><br>为什么要JS的?
<br><font color="#e78608">------解决方案--------------------</font><br>$baseUrl为页面基本的url,比如说index.php?m=table&a=list<br>$total为你要分页的记录的总数,用来计算有多少页的.<br>$start为当前页开始的记录条数.<br>$limit为每页显示的条数,这个可以定为常量.<br>$parm为额外的参数,比如说你在$baseUrl的基础上又添加了一个search='news'的话,可以在这里添加,以便追加到url里.
<br><font color="#e78608">------解决方案--------------------</font><br>学习。 <div class="clear">
                 
              
              
        
            </div>
Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
docker start起不来怎么办docker start起不来怎么办Oct 21, 2022 pm 03:43 PM

docker start起不来的解决办法:1、检查运行状态,然后通过“echo 3 &gt; /proc/sys/vm/drop_caches”命令释放被占用的内存;2、通过“$netstat -nltp|grep ...”命令检查端口是否已经被占用,如果上线后发现占有,则改为可用端口再重启即可。

Laravel中take和limit的使用方法详解Laravel中take和limit的使用方法详解Mar 10, 2024 pm 05:51 PM

《Laravel中take和limit的使用方法详解》在Laravel中,take和limit是两个常用的方法,用于在数据库查询中限制返回的记录数。虽然它们的作用类似,但在具体的使用场景中有一些细微的区别。本文将详细解析这两个方法的用法,并提供具体的代码示例。一、take方法在Laravel中,take方法用于限制返回的记录数,通常结合orderBy方法一起

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code<form name="myform"

AMP是什么币?AMP是什么币?Feb 24, 2024 pm 09:16 PM

什么是AMP币?AMP代币是由Synereo团队于2015年创立,作为Synereo平台的主要交易货币。AMP代币旨在通过多种功能和用途,为用户提供更好的数字经济体验。AMP代币的用途AMP代币在Synereo平台中拥有多重角色和功能。首先,作为平台的加密货币奖励系统的一部分,用户能够通过分享和推广内容来获得AMP奖励,这一机制鼓励用户更积极地参与平台的活动。AMP代币还可用于在Synereo平台上推广和传播内容。用户可以通过使用AMP代币提升他们的内容在平台上的曝光率,以吸引更多观众来查看和分

Laravel中take和limit的功能及用法对比Laravel中take和limit的功能及用法对比Mar 09, 2024 pm 09:09 PM

Laravel中take和limit是两种常用的方法,用于限制查询结果集的数量。虽然它们在功能上有一定的相似之处,但在使用方式和一些细节上有所不同。本文将对这两种方法的功能及用法进行详细对比,同时提供具体的代码示例,帮助读者更好地理解它们之间的区别和如何正确地应用。1.take方法take方法是LaravelEloquent查询构建器中

node start 报错怎么办node start 报错怎么办Dec 29, 2022 pm 01:55 PM

node start报错的解决办法:1、直接在终端执行“node xx.js”;2、添加start启动项“ "scripts": {"test": "echo \"Error: no test specified\" && exit 1","start":"node service.js"}”;3、重新执行“npm start”即可。

如何使用Java中的Stream的limit和skip函数进行流操作如何使用Java中的Stream的limit和skip函数进行流操作Jun 26, 2023 pm 03:55 PM

Java8中引入了StreamAPI,它能够极大地简化对集合的操作。Stream类提供了许多用于操作流的函数式方法,包括过滤、映射、合并等等。其中,limit和skip是用于流操作中限制元素数量的两个函数。一、limit函数limit函数用于限制流中元素的数量,它接受一个long类型的参数n,表示限制的数量。调用limit函数后,返回一个新的流,它仅包含

Java线程中的start方法和run方法怎么使用Java线程中的start方法和run方法怎么使用Apr 20, 2023 am 08:58 AM

start方法和run方法$start()$方法用来启动一个线程,这时此线程处于就绪(可运行)状态,并没有运行,一旦得到$cpu$时间片,就开始执行$run()$方法。而直接调用$run()$方法,仅仅只是调用了一个类里的方法,其本质上还是在当前线程中执行的,因此只有使用$start()$方法来调用$run()$方法才能实现真正的多线程。示例代码@Slf4j(topic="c.Test4")publicclassTest4{publicstaticvoidmain(Strin

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

Repo: How To Revive Teammates
1 months agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version