Heim > Schlagzeilen > PHP-Paging-Abfrage

PHP-Paging-Abfrage

无忌哥哥
Freigeben: 2018-06-28 14:02:01
Original
2684 Leute haben es durchsucht

* Prinzip der Paging-Abfrage

* Prinzip der Paging-Analyse:

* 1. Die Rolle des LIMIT-Parameters: Offset und Anzeigemenge

* 2. Wenn Kontrolle die auf jeder Seite angezeigte Nummer

* 3. GET-Parameter empfangen, p verwenden, um die aktuelle Seitennummer darzustellen, 3 Elemente pro Seite anzeigen

* 4. Erforderliche Parameter:

* (1).totalPage Gesamtzahl der Seiten

* (2).totalNumber Wie viele Datenstücke insgesamt vorhanden sind

* (3).pageSize Wie viele Datenstücke es sind wird auf jeder Seite angezeigt

* (4)currentPage aktuelle Seite

* (5)*.rangeStart Startseite

* (6)*.rangeEnd letzte Seite

* 5. Aktuell Die Berechnungsformel des Offsets: (Anzahl der Seiten-1)*Anzahl, die auf jeder Seite angezeigt wird

* Offset = (Seite-1)*Anzahl

$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 &#39;<h2 align="center">员工信息表</h2>&#39;;
echo &#39;<table border="1" cellspacing="0" cellpadding="5" width="70%" align="center">&#39;;
echo &#39;<tr bgcolor="lightgreen"><th>ID</th><th>用户名</th><th>性别</th><th>年龄</th><th>工资</th></tr>&#39;;
foreach ($res as $row) {
    echo &#39;<tr align="center">&#39;;
    echo &#39;<td>&#39;.$row[&#39;staff_id&#39;].&#39;</td><td>&#39;.$row[&#39;name&#39;].&#39;</td>&#39;;
    $row[&#39;sex&#39;] = $row[&#39;sex&#39;]==0 ? &#39;男&#39; : &#39;<span style="color:red">女</span>&#39;;
    echo &#39;<td>&#39;.$row[&#39;sex&#39;].&#39;</td>&#39;;
    echo &#39;<td>&#39;.$row[&#39;age&#39;].&#39;</td><td>&#39;.$row[&#39;salary&#39;].&#39;</td>&#39;;
    echo &#39;</tr>&#39;;
}
echo &#39;</table>&#39;;
//计算共计多少页?
$stmt2 = $pdo->prepare("SELECT * FROM staff");
$stmt2->execute();
$totalPage = ceil($stmt2->rowCount() / $num);
$page = ($page == $totalPage) ? ($totalPage-1) : $page;
echo &#39;<style>a {margin-left: 10px;text-decoration: none}a:hover{color:red}</style>&#39;;
echo &#39;<h3 align="center">&#39;;
echo &#39;<a href="http://php.io/0427/page.php?p=1">首页</a>&#39;;
echo &#39;<a href="http://php.io/0427/page.php?p=&#39;;
echo (($page-1)==0)?1:($page-1);
echo &#39;">上一页</a>&#39;;
for ($i=1; $i<=$totalPage; $i++) {
    echo &#39;<a href="http://php.io/0427/page.php?p=&#39;.$i.&#39;">&#39;.$i.&#39;</a>&#39;;
}
echo &#39;<a href="http://php.io/0427/page.php?p=&#39;.($page+1).&#39;">下一页</a>&#39;;
echo &#39;<a href="http://php.io/0427/page.php?p=&#39;.$totalPage.&#39;">尾页</a>&#39;;
echo &#39;</h3>&#39;;
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage