So implementieren Sie die Paging-Anzeige mit PHP+MySQL

零到壹度
Freigeben: 2023-03-22 15:08:01
Original
2961 Leute haben es durchsucht

WDie EB-Entwicklung wird in Zukunft der Mainstream der verteilten Programmentwicklung sein. Normalerweise umfasst die Webentwicklung den Umgang mit der Datenbank. Der Client liest sie normalerweise in Form von Paging, eine Seite pro Seite . Die Seite ist leicht zu lesen und schön. Daher ist das Schreiben von Paging-Programmen ein wichtiger Teil der Webentwicklung. Hier werden wir gemeinsam das Schreiben von Paging-Programmen untersuchen.

1. Prinzip des Paging-Programms

Das Paging-Programm hat zwei sehr wichtige Parameter: wie viele Datensätze auf jeder Seite angezeigt werden ($pagesize) und die aktuelle Welche Seite ($page). Mit diesen beiden Parametern können wir ganz einfach ein Paging-Programm schreiben. Wir verwenden die MySQL-Datenbank als Datenquelle. Wenn Sie in MySQL einen bestimmten Inhalt aus der Tabelle entfernen möchten, können Sie die T-SQL-Anweisung verwenden * vom Tabellenlimit-Offset, zu erreichende Zeilen. Der Offset ist hier der Datensatz-Offset und seine Berechnungsmethode ist offset=$pagesize*($page-1), rows ist die Anzahl der anzuzeigenden Datensätze, hier ist $page. Mit anderen Worten bedeutet die Anweisung „select * from table limit 10,10“, dass die 20 Datensätze ab dem 11. Datensatz in der Tabelle abgerufen werden.

2. Hauptcode-Analyse

$pagesize=10; //设置每一页显示的记录数
$conn=mysql_connect("localhost","root",""); //连接数据库
$rs=mysql_query("select count(*) from tb_product",$conn); //取得记录总数$rs
$myrow = mysql_fetch_array($rs);
$numrows=$myrow[0];
//计算总页数
$pages=intval($numrows/$pagesize);
//判断页数设置
if (isset($_GET['page'])){
 $page=intval($_GET['page']);
}
else{ 
 $page=1; //否则,设置为第一页
}
Nach dem Login kopieren

3. Anwendungsfalltabelle myTable erstellen

create table myTable(id int NOT NULL auto_increment,news_title varchar(50),news_cont text,add_time datetime,PRIMARY KEY(id))
Nach dem Login kopieren

4. Vollständiger Code

<html>
<head>
<title>php分页示例</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
</head>
<body>
<?php
 $conn=mysql_connect("localhost","root","");
 //设定每一页显示的记录数
 $pagesize=1;
 mysql_select_db("mydata",$conn);
 //取得记录总数$rs,计算总页数用
 $rs=mysql_query("select count(*) from tb_product",$conn);
 $myrow = mysql_fetch_array($rs);
 $numrows=$myrow[0];
 //计算总页数
 $pages=intval($numrows/$pagesize);
 if ($numrows%$pagesize)
  $pages++;
 //设置页数
 if (isset($_GET['page'])){
  $page=intval($_GET['page']);
 }
 else{
  //设置为第一页 
  $page=1;
 }
 //计算记录偏移量
 $offset=$pagesize*($page - 1);
 //读取指定记录数
 $rs=mysql_query("select * from myTable order by id desc limit $offset,$pagesize",$conn);
 if ($myrow = mysql_fetch_array($rs))
 {
  $i=0;
  ?>
  <table border="0" width="80%">
  <tr>
   <td width="50%" bgcolor="#E0E0E0">
    <p align="center">标题</td>
    <td width="50%" bgcolor="#E0E0E0">
    <p align="center">发布时间</td>
  </tr>
  <?php
   do {
    $i++;
    ?>
  <tr>
   <td width="50%"><?=$myrow["news_title"]?></td>
   <td width="50%"><?=$myrow["news_cont"]?></td>
  </tr>
   <?php
   }
   while ($myrow = mysql_fetch_array($rs));
    echo "</table>";
  }
  echo "<p align='center'>共有".$pages."页(".$page."/".$pages.")";
  for ($i=1;$i< $page;$i++)
   echo "<a href='fenye.php?page=".$i."'>[".$i ."]</a> ";
   echo "[".$page."]";
   for ($i=$page+1;$i<=$pages;$i++)
    echo "<a href='fenye.php?page=".$i."'>[".$i ."]</a> ";
    echo "</p>";
   ?>
  </body>
  </html>
Nach dem Login kopieren

5. Zusammenfassung

Dieser Beispielcode ist in Windows 2000 Server+php4.4.0+ mysql5 Funktioniert gut auf .0.16. Das in diesem Beispiel gezeigte Seitenformat ist [1][2][3]…. Wenn Sie es in der Form „Startseite Vorherige Seite Nächste Seite Letzte Seite“ anzeigen möchten, fügen Sie bitte den folgenden Code hinzu:

$first=1;
$prev=$page-1;
$next=$page+1;
$last=$pages;
if ($page > 1)
{
 echo "<a href='fenye.php?page=".$first."'>首页</a> ";
 echo "<a href='fenye.php?page=".$prev."'>上一页</a> ";
}
if ($page < $pages)
{
 echo "<a href='fenye.php?page=".$next."'>下一页</a> 
 echo "<a href='fenye.php?page=".$last."'>尾页</a> ";
}
Nach dem Login kopieren


Tatsächlich ist das Schreiben von Seitenanzeigecode so Sehr einfach, solange man versteht, wie es funktioniert. Ich hoffe, dass dieser Artikel denjenigen Webprogrammierern helfen kann, die diesen Aspekt der Programmierung benötigen.

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Paging-Anzeige mit PHP+MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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