本教程将告诉你如何选择从一个MySQL数据库中的数据,在多个页面上分裂,并显示它使用页码。我们有MySQL的表名为“学生”90记录与以下领域:名称-数据类型为varchar(250)****** -为varchar(250),而是做一个单一的SELECT查询,并显示所有90记录,我们可以在一个页面上有5页20条记录每个包含最多。要做到这一点,我们将需要使用LIMIT子句的SELECT命令,所以我们可以限制查询只显示20条记录。LIMIT子句也允许你指定哪个记录开始。例如,此查询
$sql
=
"SELECT * FROM students ORDER BY name ASC LIMIT 0, 20"
;
$sql
=
"SELECT * FROM students ORDER BY name ASC LIMIT 50, 20"
;
再次排序的名字,但这个时候,它会从第50记录20条记录。
所以基本上在此条款(限制开始,计数)“开始”指定的起始记录和“计数”指定显示多少记录。接下来的事情做的是做一个PHP文件称为pagination.php将表从我们的记录显示第20。代码在下面选择,然后打印在表中的数据。
<?php
if
(isset(
$_GET
[
"page"
])) {
$page
=
$_GET
[
"page"
]; }
else
{
$page
=1; };
$start_from
= (
$page
-1) * 20;
$sql
=
"SELECT * FROM students ORDER BY name ASC LIMIT $start_from, 20"
;
$rs_result
= mysql_query (
$sql
,
$connection
);
?>
<table>
<tr><td>Name</td><td>Phone</td></tr>
<?php
while
(
$row
= mysql_fetch_assoc(
$rs_result
)) {
?>
<tr>
<td><?
echo
$row
[
"Name"
]; ?></td>
<td><?
echo
$row
[
"PhoneNumber"
]; ?></td>
</tr>
<?php
};
?>
</table>
if
(isset(
$_GET
[
"page"
])) {
$page
=
$_GET
[
"page"
]; }
else
{
$page
=1; };
$start_from
= (
$page
-1) * 20;
站长百科
$sql
=
"SELECT COUNT(Name) FROM students"
;
$rs_result
= mysql_query(
$sql
,
$connection
);
$row
= mysql_fetch_row(
$rs_result
);
$total_records
=
$row
[0];
$total_pages
=
ceil
(
$total_records
/ 20);
要打印的页码和联营公司的网址,每个号码,我们会为()循环使用。
<?php
for
(
$i
=1;
$i
<=
$total_pages
;
$i
++) {
echo
"<a href='pagination.php?page="
.
$i
.
"'>"
.
$i
.
"</a> "
;
};
?>
<?php
if
(isset(
$_GET
[
"page"
])) {
$page
=
$_GET
[
"page"
]; }
else
{
$page
=1; };
$start_from
= (
$page
-1) * 20;
$sql
=
"SELECT * FROM students ORDER BY name ASC LIMIT $start_from, 20"
;
$rs_result
= mysql_query (
$sql
,
$connection
);
?>
<table>
<tr><td>Name</td><td>Phone</td></tr>
<?php
while
(
$row
= mysql_fetch_assoc(
$rs_result
)) {
?>
<tr>
<td><?
echo
$row
[
"Name"
]; ?></td>
<td><?
echo
$row
[
"PhoneNumber"
]; ?></td>
</tr>
<?php
};
?>
</table>
<?php
$sql
=
"SELECT COUNT(Name) FROM students"
;
$rs_result
= mysql_query(
$sql
,
$connection
);
$row
= mysql_fetch_row(
$rs_result
);
$total_records
=
$row
[0];
$total_pages
=
ceil
(
$total_records
/ 20);
for
(
$i
=1;
$i
<=
$total_pages
;
$i
++) {
echo
"<a href='pagination.php?page="
.
$i
.
"'>"
.
$i
.
"</a> "
;
};
?>