* 페이징 쿼리의 원리
* 페이징 원리 분석:
* 1. LIMIT 매개변수의 역할: 오프셋 및 표시 수량
# 🎜 🎜# * 2. 각 페이지에 표시되는 번호를 제어하는 경우 * 3. GET 매개변수를 수신하고 p를 사용하여 현재 페이지 번호를 나타내며 페이지당 3개 항목을 표시합니다#🎜 🎜# * 4 . 필수 매개변수:
* (1).totalPage 총 페이지 수
* (2).totalNumber 총 데이터 개수 # 🎜🎜#
* (3).pageSize 각 페이지에 몇 개의 데이터가 표시되나요?* (6)*.rangeEnd 마지막 페이지
* 5. 계산식 현재 오프셋 수: (페이지 수 - 1) * 페이지당 표시되는 수
#🎜 🎜# * 오프셋 = (페이지-1)*num$page = isset($_GET['p'])? $_GET['p']:1; $page = ($page == 0 ) ? 1 : $page; $num = 5; $offset = ($page-1)*$num; //1.获取到所有数据,用表格显示出来 $pdo = new PDO('mysql:host=localhost;dbname=php','root', 'root'); //$sql = "SELECT id,name,email FROM user1 LIMIT 0,3"; $sql = "SELECT `staff_id`,`name`,`sex`,`age`,`salary` FROM `staff` LIMIT :offset, :num"; $stmt = $pdo->prepare($sql); $stmt->bindParam(':offset', $offset, PDO::PARAM_INT); $stmt->bindParam(':num', $num, PDO::PARAM_INT); $stmt->execute(); $stmt->setFetchMode(PDO::FETCH_ASSOC); $res = $stmt->fetchAll(); echo '<h2 align="center">员工信息表</h2>'; echo '<table border="1" cellspacing="0" cellpadding="5" width="70%" align="center">'; echo '<tr bgcolor="lightgreen"><th>ID</th><th>用户名</th><th>性别</th><th>年龄</th><th>工资</th></tr>'; foreach ($res as $row) { echo '<tr align="center">'; echo '<td>'.$row['staff_id'].'</td><td>'.$row['name'].'</td>'; $row['sex'] = $row['sex']==0 ? '男' : '<span style="color:red">女</span>'; echo '<td>'.$row['sex'].'</td>'; echo '<td>'.$row['age'].'</td><td>'.$row['salary'].'</td>'; echo '</tr>'; } echo '</table>'; //计算共计多少页? $stmt2 = $pdo->prepare("SELECT * FROM staff"); $stmt2->execute(); $totalPage = ceil($stmt2->rowCount() / $num); $page = ($page == $totalPage) ? ($totalPage-1) : $page; echo '<style>a {margin-left: 10px;text-decoration: none}a:hover{color:red}</style>'; echo '<h3 align="center">'; echo '<a href="http://php.io/0427/page.php?p=1">首页</a>'; echo '<a href="http://php.io/0427/page.php?p='; echo (($page-1)==0)?1:($page-1); echo '">上一页</a>'; for ($i=1; $i<=$totalPage; $i++) { echo '<a href="http://php.io/0427/page.php?p='.$i.'">'.$i.'</a>'; } echo '<a href="http://php.io/0427/page.php?p='.($page+1).'">下一页</a>'; echo '<a href="http://php.io/0427/page.php?p='.$totalPage.'">尾页</a>'; echo '</h3>';