ホームページ  >  記事  >  バックエンド開発  >  PHPでページング表示を設定する方法

PHPでページング表示を設定する方法

L
Lオリジナル
2020-06-01 13:09:383964ブラウズ

PHPでページング表示を設定する方法

php でページング表示を設定する方法

ページングの原理

ページング表示では、mysql データベースから取り出したデータを通常のセクションで表示します SQL 文の制限を使用して開始データをページ数にバインドし、ページ数に応じてデータベースからデータを取得しますPages.

例: データベースのテーブル名が list で、各ページから 10 個の情報が取得されるとします。

    第1页   select * from list limit 0,10;
    第2页   select * from list limit 10,10;
    第3页   select * from list limit 20,10;

この観点から、n 番目のページは select * from になります。 list limit (n-1)*10,10;

このようにして、ページ数を使用してデータを取得する式を取得します。

select * from list limit ($page-1)*$pagesize,$pagesize; $page は現在のページ番号、$pagesize はページごとに取得されるアイテムの数

必要な知識ポイント

#1. 基本操作データベース関数

1.1 mysqli_connect(); データベースに接続します (例: $link = mysqli_connect('127.0.0.1','root',12345678,) 'bbs');


1.2 mysqli_query(): データを取得します (例: $res = mysqli_query ($link, "select * from list"); 2 番目のパラメーターは SQL ステートメントです

1.3 mysqli_num_rows(): 取得したデータの数を確認します (例: $num = mysqli_num_rows($res);

1.4 mysqli_fetch_assoc()、または mysqli_fetch_row(): 取得したデータからデータを取得しますデータセットは、一度に 1 つのピースのみであり、ポインタはフェッチ後に次のピースを指します。たとえば、mysqli_fetch_assoc($res) は、fetch_assoc、fetch_row、および fetch_array に加えて、それらの具体的な違いについてはマニュアルを参照してください

1.5 制限は、データベース内のデータの操作に使用されます。制限は、開始位置と操作の数です。たとえば、データベースから数値を取得する場合は、リストから * を取得します。制限 10,10;

2. その他の関連知識

2.1 $_SERVER['REQUEST_URI'] は、現在のページの URL を取得します (例: https://i.cnblogs.com/EditPosts.aspx の URL)。 ?opt=1 は /EditPosts です。aspx?opt=12.2 parse_url(): URL を解析し、URL の各コンポーネントを返します。2 番目のパラメータが書き込まれていない場合、返される配列内の可能なキーは次のとおりです:

スキーム - http,

host
port
user
pass
path
クエリ - 疑問符の後?
フラグメント - ハッシュの後シンボル

#実装プロセス

#1. 現在の URL 文字列を取得し、parse_url で解析して URL 配列を取得します

2. サーバーに接続し、表示するリスト ページを取得します。 コンテンツの収集、表示されているアイテムの総数をカウントし、コンテンツの総ページ数を計算します。

3. ページが送信ステータスがそうでない場合、デフォルトは最初のページです $pageval

4. 計算 制限の開始位置を変数 $page

5 に割り当てます. $page と $pageSize を使用して、データベースからデータを取得します

6。便利なデータ収集をループすると、出力がページに表示されます

具体的なコードは次のとおりです

$url = $_SERVER['REQUEST_URI'];
$url = parse_url($url);
$url = $url['path'];
$pageSize = 4;//连接服务器$link = mysqli_connect('127.0.0.1','root',12345678,'bbs');
$res = mysqli_query($link,'select * from fenye');
$num = mysqli_num_rows($res);
$pageNum = ceil($num/$pageSize);//判断页面是否是提交状态if ( isset($_GET['page']) && $_GET['page'] >1) {
    $pageVal = $_GET['page'];
}else {
    $pageVal = 1;
}//计算起始位置$page = ($pageVal-1)*$pageSize;//去数据库取数据$res = $mysqli_query($link,"select * from fenye limit $page,$pageSize");//如果$res有值,则循环便利结果展示输出在页面if ($res) {    while( $row = mysqli_fetch_assoc($res) ) {    echo $row[&#39;name&#39;]. &#39;|&#39;.$row[&#39;age&#39;].&#39;<br/>&#39;;
    }
}//html添加页数部分<a href="?page=1">1</a>;
<a href="?page=2">2</a>;
<a href="?page=3">3</a>;
<a href="?page=4">4</a>;
<a href="?page=5">5</a>;
总共<?php echo $pageNum; ?>页,当前在<?php echo $pageVal;?>页

推奨チュートリアル: 「

PHP チュートリアル

以上がPHPでページング表示を設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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