Home  >  Article  >  Backend Development  >  Method and example analysis of PHP using Mysqli class library to achieve paging effect

Method and example analysis of PHP using Mysqli class library to achieve paging effect

墨辰丷
墨辰丷Original
2018-06-04 10:09:021527browse

This article mainly introduces the method of PHP using the Mysqli class library to achieve the paging effect. It analyzes the relevant configuration file settings, database operations and paging related implementation skills of PHP using the Mysqli class library in the form of examples. Friends in need can refer to it. Next

This article is tailor-made based on my previous article "PHP Database Operation: Database Operation Class Library Based on Mysqli". How to use the FetchAll method in the M class library to create perfect paging. .

Paging is essential in each of our projects, and it appears very frequently. This requires our programmers to implement the paging solution with the fastest speed and the most concise code in the project.

The implementation of paging is mostly based on the parameters passed in the URL (usually page), for example: http://localhost/article.php?page=2 means to get the second page data

Suggestion: When you read this article, please make sure that you have studied my last article "PHP Database Operation: Database Operation Class Library Based on Mysqli"

Below we will use the M class library Let’s explain the paging, the code that appears in the blog post, and finally the download address, including the test database file.

1. Create the configuration file config.inc.php

The code list is as follows

<?php
header(&#39;Content-Type:text/html;Charset=utf-8&#39;); //设置header编码
define(&#39;ROOT_PATH&#39;, dirname(__FILE__)); //设置根目录
define(&#39;DB_HOST&#39;, &#39;localhost&#39;); //数据库服务器地址
define(&#39;DB_USER&#39;, &#39;root&#39;); //数据库用户名
define(&#39;DB_PWD&#39;, &#39;×××&#39;);//数据库密码,请根据机器填写
define(&#39;DB_NAME&#39;, &#39;×××&#39;); //数据库名称,请根据机器填写
define(&#39;DB_PORT&#39;, &#39;3306&#39;); //数据库端口,请根据机器填写
function __autoload($className) {
  require_once ROOT_PATH . &#39;/includes/&#39;. ucfirst($className) .&#39;.class.php&#39;; //自动加载类库文件
}
?>

2. Create the information test file article.php

Note: Due to my limited CSS ability, in order to demonstrate the function, I only used simple HTML
The code list and comments are as follows

<?php
require &#39;config.inc.php&#39;; //引入配置文件
$m = new M(); //实例化 M 类
$total = $m->Total(&#39;jzy_article&#39;); //资讯文章总数
$page = new Page($total, 20); //实例化分页类
/*
注意事项:
1、实例分页 Page 类的时候,需要传两个参数:记录总数;每页显示的记录数。
2、当传入参数后,Page 类中有个setLimit()方法会自动计算出 SQL 中的 limit 值。比如:URL 参数中 page 为1的时候,limit 值为“0,20”;为2的时候,limit 值为“20,20”……
3、计算出来的 $page->limit,必须放在 FetchAll 方法中的最后一位,详情请查看 FetchAll 方法
*/
$data = $m->FetchAll("jzy_article", "title, source, writer, pubdate", "", "id DESC", $page->limit); //根据 M 类库中的 FetchAll 方法获取数据
?>
<style>
/* 分页样式 */
#page {text-align:right;  padding:10px;clear:both;}#page a {border:1px solid #666;padding:2px 5px;margin:0 2px;color:#3b6ea5;text-decoration:none;}#page a:hover,#page span.me {color:#fff;border:1px solid #000;background:#000;text-decoration:none;}#page span.disabled {border:1px solid #ccc;padding:2px 5px;margin:0 2px;color:#ccc;}#page span.me {padding:2px 5px;margin:0 2px;}
</style>
<table width="1000" border="1" style="border-collapse:collapse; font-size:13px;">
<tr height="30">
  <th width="483">标题</th>
  <th width="141">来源</th>
  <th width="154">作者</th>
  <th width="194">添加时间</th>
</tr>
<?php
foreach ($data as $v) { //循环取出数据
?>
<tr>
  <td> <?php echo $v[&#39;title&#39;]; ?></td>
  <td align="center"><?php echo $v[&#39;source&#39;]; ?></td>
  <td align="center"><?php echo $v[&#39;writer&#39;]; ?></td>
  <td align="center"><?php echo $v[&#39;pubdate&#39;]; ?></td>
</tr>
<?php
}
?>
<tr>
  <td id="page" colspan="4"><?php echo $page->fpage(); ?></td> <!-- 调出分页类 -->
</tr>
</table>

3. Access test effect

Open the browser and enter the test url address, your browser should The following effect appears

Summary: The above is the entire content of this article, I hope it can be helpful to everyone's study.

Related recommendations:

PHP method to get the first image of an article in a website as a thumbnail

php Tips for file upload back-end processing

Detailed explanation and example analysis of PHP writing format

The above is the detailed content of Method and example analysis of PHP using Mysqli class library to achieve paging effect. For more information, please follow other related articles on the PHP Chinese website!

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