ホームページ php教程 php手册 完全讲解PHP+MySQL的分页显示示例分析

完全讲解PHP+MySQL的分页显示示例分析

Jun 06, 2016 pm 07:52 PM
php+mysql 分析する ページネーション 見せる 説明する

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 Web开发是今后分布式程式开发的主流,通常的web开发都要涉及到与数据库打交道,客户端从服务器端读取通常都是以分页的形式来显示,一页一页的阅读起来既方便又美观。所以说写分页程序是web开发的一个

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

  Web开发是今后分布式程式开发的主流,通常的web开发都要涉及到与数据库打交道,客户端从服务器端读取通常都是以分页的形式来显示,一页一页的阅读起来既方便又美观。所以说写分页程序是web开发的一个重要组成部分,在这里,我们共同来研究分页程序的编写。

一、分页程序的原理

  分页程序有两个非常重要的参数:每页显示几条记录($pagesize)和当前是第几页($page)。有了这两个参数就可以很方便的写出分页程序,我们以MySql数据库作为数据源,在MySQL里如果要想取出表内某段特定内容可以使用的T-SQL语句:select * from table limit offset,rows来实现。这里的offset是记录偏移量,它的计算方法是offset=$pagesize*($page-1),rows是要显示的记录条数,这里就是$page。也就是说select * from table limit 10,10这条语句的意思是取出表里从第11条记录开始的20条记录。

二、主要代码解析

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

<ccid_code></ccid_code>$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; //否则,设置为第一页

}/>

ログイン後にコピー

三、创建用例用表myTable

1

2

3

<ccid_code></ccid_code>create table myTable

(id int NOT NULL auto_increment,news_title varchar(50),

news_cont text,add_time datetime,PRIMARY KEY(id))/>

ログイン後にコピー
 

四、完整代码

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

<ccid_code></ccid_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 "<div 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 "</div>";

 ?>

</body>

</html>/>

ログイン後にコピー

 

五、总结

1

<ccid_code></ccid_code>/>

ログイン後にコピー
/>

其实,写分页显示代码是很简单的,只要掌握了它的工作原理。

完全讲解PHP+MySQL的分页显示示例分析

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Oracle DECODE関数の詳細説明と使用例 Oracle DECODE関数の詳細説明と使用例 Mar 08, 2024 pm 03:51 PM

Oracle の DECODE 関数は、クエリ ステートメントのさまざまな条件に基づいてさまざまな結果を返すためによく使用される条件式です。この記事ではDECODE関数の構文・使い方・サンプルコードを詳しく紹介します。 1. DECODE 関数の構文 DECODE(expr,search1,result1[,search2,result2,...,default]) expr: 比較する式またはフィールド。検索1、

Go 言語のインデントの仕様と例 Go 言語のインデントの仕様と例 Mar 22, 2024 pm 09:33 PM

Go 言語のインデント仕様と例 Go 言語は Google によって開発されたプログラミング言語であり、その簡潔で明確な構文で知られており、インデント仕様はコードの読みやすさと美しさに重要な役割を果たします。この記事ではGo言語のインデントの仕様を紹介し、具体的なコード例を通して詳しく解説します。インデントの仕様 Go 言語では、スペースの代わりにタブがインデントに使用されます。インデントの各レベルは 1 つのタブで、通常はスペース 4 個の幅に設定されます。このような仕様により、コーディング スタイルが統一され、チームが協力してコンパイルできるようになります。

MyBatis ページングプラグインの原理の詳細な説明 MyBatis ページングプラグインの原理の詳細な説明 Feb 22, 2024 pm 03:42 PM

MyBatis は優れた永続層フレームワークであり、XML とアノテーションに基づいたデータベース操作をサポートし、シンプルで使いやすく、豊富なプラグイン メカニズムも提供します。その中でも、ページング プラグインは、よく使用されるプラグインの 1 つです。この記事では、MyBatis ページング プラグインの原理を詳しく説明し、具体的なコード例で説明します。 1. ページング プラグインの原理 MyBatis 自体はネイティブ ページング機能を提供しませんが、プラグインを使用してページング クエリを実装できます。ページング プラグインの原理は主に MyBatis を傍受することです

DreamWeaver CMS のセカンダリディレクトリを開けない原因の分析 DreamWeaver CMS のセカンダリディレクトリを開けない原因の分析 Mar 13, 2024 pm 06:24 PM

タイトル: DreamWeaver CMS のセカンダリディレクトリを開けない原因と解決策の分析 Dreamweaver CMS (DedeCMS) は、さまざまな Web サイトの構築に広く使用されている強力なオープンソースのコンテンツ管理システムです。ただし、Web サイトの構築中に、セカンダリ ディレクトリを開けない状況が発生し、Web サイトの通常の動作に問題が発生することがあります。この記事では、セカンダリ ディレクトリを開けない考えられる理由を分析し、この問題を解決するための具体的なコード例を示します。 1. 考えられる原因分析: 疑似静的ルール構成の問題: 使用中

PHPドット演算子の応用例と分析例 PHPドット演算子の応用例と分析例 Mar 28, 2024 pm 12:06 PM

PHP ドット演算子の応用例と分析例 PHP では、ドット演算子 (「.」) は 2 つの文字列を接続するために使用される演算子であり、文字列を連結するときに非常に一般的に使用され、非常に柔軟です。ドット演算子を使用すると、複数の文字列を簡単に連結して新しい文字列を形成できます。以下では、サンプル分析を通じて PHP ドット演算子の使用法を紹介します。 1. 基本的な使い方 まずは基本的な使い方例を見てみましょう。それぞれ 2 つの単語を格納する 2 つの変数 $str1 と $str2 があるとします。

Linux で現在のディレクトリを確認するにはどうすればよいですか? Linux で現在のディレクトリを確認するにはどうすればよいですか? Feb 23, 2024 pm 05:54 PM

Linux システムでは、pwd コマンドを使用して現在のパスを表示できます。 pwd コマンドは PrintWorkingDirectory の略で、現在の作業ディレクトリのパスを表示するために使用されます。ターミナルに次のコマンドを入力して、現在のパスを表示します。 pwd このコマンドを実行すると、ターミナルには現在の作業ディレクトリのフル パス (/home/user/Documents など) が表示されます。さらに、他のオプションを使用して pwd コマンドの機能を拡張することもできます。たとえば、-P オプションを使用すると、次のように表示できます。

PHP で配列のページネーションを実装する最良の方法 PHP で配列のページネーションを実装する最良の方法 May 04, 2024 pm 02:39 PM

PHP 配列のページネーションを行う最も一般的な方法は 2 つあります。array_slice() 関数を使用します。スキップする要素の数を計算し、指定された範囲の要素を抽出します。組み込みイテレータを使用する: Iterator インターフェイスを実装し、rewind()、key()、current()、next()、および valid() メソッドを使用して、指定された範囲内の要素を走査します。

全角文字と半角文字の違いは何ですか? 全角文字と半角文字の違いは何ですか? Mar 25, 2024 pm 03:54 PM

全角文字と半角文字の違いは何ですか?私たちは日常生活の中で、特に入力方法、植字、印刷など、この 2 つの文字を使用する場面で、全角文字と半角文字という 2 つの概念に遭遇することがよくあります。では、全角文字と半角文字の違いは何でしょうか?この問題については以下で議論しましょう。まず、全角文字と半角文字は、もともと中国語のタイプライターによって導入された概念です。いわゆる半角文字とは、文字の幅の半分を占める文字で、通常は英語文字とアラビア数字を指します。全角文字が占有

See all articles