이 글에서는 주로 PHP가 Mysqli 클래스 라이브러리를 사용하여 페이징 효과를 구현하는 방법을 소개합니다. Mysqli 클래스 라이브러리를 사용하여 PHP의 관련 구성 파일 설정, 데이터베이스 작업 및 페이징 관련 구현 기술을 예제 형식으로 분석합니다. 참고하세요
이 글은 제가 이전 글 "PHP 데이터베이스 연산: Mysqli 기반 데이터베이스 연산 클래스 라이브러리"를 바탕으로 M 클래스 라이브러리의 FetchAll 메소드를 사용하여 완벽한 페이징을 생성하는 방법을 바탕으로 작성되었습니다.
페이지 매김은 우리 프로젝트마다 필수적이며 매우 자주 나타납니다. 이를 위해서는 프로그래머가 프로젝트에서 가장 빠른 속도와 가장 간결한 코드로 페이징 솔루션을 구현해야 합니다.
페이징 구현은 대부분 URL(일반적으로 페이지)에 전달된 매개변수를 기반으로 합니다. 예: http://localhost/article.php?page=2는 두 번째 페이지 데이터를 가져오는 것을 의미합니다
제안: reading 이 글을 쓸 때, 저의 지난 글 "PHP 데이터베이스 연산: Mysqli 기반의 데이터베이스 연산 클래스 라이브러리"를 꼭 읽어보시기 바랍니다.
아래에서는 M 클래스 라이브러리를 기반으로 한 페이징에 대해 설명하겠습니다. 블로그 게시물, 테스트 데이터베이스 파일을 포함하여 다운로드 주소가 마지막에 첨부되어 있습니다.
1. 구성 파일 config.inc.php
코드 목록은 다음과 같습니다
<?php header('Content-Type:text/html;Charset=utf-8'); //设置header编码 define('ROOT_PATH', dirname(__FILE__)); //设置根目录 define('DB_HOST', 'localhost'); //数据库服务器地址 define('DB_USER', 'root'); //数据库用户名 define('DB_PWD', '×××');//数据库密码,请根据机器填写 define('DB_NAME', '×××'); //数据库名称,请根据机器填写 define('DB_PORT', '3306'); //数据库端口,请根据机器填写 function __autoload($className) { require_once ROOT_PATH . '/includes/'. ucfirst($className) .'.class.php'; //自动加载类库文件 } ?>
2. 정보 테스트 파일 Article.php
을 만듭니다. CSS 능력, 이것은 단지 데모용 기능이며 간단한 HTML만 사용합니다
코드 목록과 설명은 다음과 같습니다
<?php require 'config.inc.php'; //引入配置文件 $m = new M(); //实例化 M 类 $total = $m->Total('jzy_article'); //资讯文章总数 $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['title']; ?></td> <td align="center"><?php echo $v['source']; ?></td> <td align="center"><?php echo $v['writer']; ?></td> <td align="center"><?php echo $v['pubdate']; ?></td> </tr> <?php } ?> <tr> <td id="page" colspan="4"><?php echo $page->fpage(); ?></td> <!-- 调出分页类 --> </tr> </table>
3. 액세스 테스트 효과
브라우저를 열고 테스트 URL 주소를 입력하세요. 브라우저는 다음과 같은 효과를 가져야 합니다
요약: 위 내용은 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되기를 바랍니다.
관련 권장사항:
PHP를 사용하여 웹사이트 기사의 첫 번째 이미지를 썸네일로 얻는 방법
자세한 설명 및 PHP 작성 형식의 예 Analysis
위 내용은 페이징 효과를 얻기 위해 Mysqli 클래스 라이브러리를 사용한 PHP의 방법 및 예제 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!