最近、Mo Fangshu の Web サイトでは、すべてのコメントを含むページを作成し、wp データベースのいくつかのフィールドを直接呼び出しました。これは、PHP を学んだばかりの初心者にとって、最初はページング関数です。最も基本的なページング コードが実装されていますが、コードとエクスペリエンスは非常に貧弱です。後で、この機能を見つけました。これは悪くありません。 マイページを作成します。 php ファイルを保存し、後でロードします。
- if(!function_exists("pageDivide")){
- #$total 合計情報
- #$表示数量、デフォルトは20
- #$このページへのurlリンク
- function pageDivide($total, $ showu=20,$url=''){
- #$page 現在のページ番号
- #$sqlfirst mysql データベースの開始項目
- #$pagecon ページング ナビゲーション コンテンツ
- global $page,$sqlfirst,$pagecon,$_SERVER;
- $ GLOBALS ["shownu"]=$shownu;
- if(isset($_GET['page'])){
- $page=$_GET['page'];
- }else $page=1;
- #if $ URLはデフォルト値であるnull値を使用し、その値がこのページのURLに割り当てられます
- if(!$url){ $url=$_SERVER["REQUEST_URI"];}
- #URL分析
- $parse_url=parse_url($url);
- @$url_query=$parse_url["query"]; //疑問符の後の内容を取得します?
- if($url_query){
- $url_query=preg_replace("/(& ?)(page=$page)/","" ,$url_query);
- $url = str_replace($parse_url["query"],$url_query,$url);
- if($url_query){
- $url . = "&page";
- }else $url .= " page";
- }else $url .= "?page";
- #ページ番号計算
- $lastpg=ceil($total/$shownu); //Lastページ、総ページ数
- $page=min($lastpg, $page);
- $prepg=$page-1; //前のページ
- $nextpg=($page==$lastpg ? 0 : $page+1 ); //次のページ
- $sqlfirst=($page -1)*$shownu;
- #ページングナビゲーションコンテンツの開始
- $pagecon = "最初に表示".($total?($sqlfirst+1):0). "-".min($sqlfirst+$shownu,$total )." レコード、合計 $total レコード";
- if($lastpg<=1) // 存在する場合は false; 1 ページだけなので、ジャンプしてください
- if($page!=1 ) $pagecon .=" ホームページ "; else $pagecon .="ホームページ" ;
- if($prepg) $pagecon .=" 前のページ "; else $pagecon .=" 前のページ";
- if($nextpg) $pagecon .=" 次のページ "; else $pagecon .=" 次のページ";
- if($page!=$lastpg) $pagecon. =" 最後のページ "; else $pagecon .=" 最後のページ";
-
- # ドロップダウン ジャンプ リスト、すべてのページ番号をループします
- $pagecon .="
- for($i=1;$i< ;=$lastpg;$i++){
- if( $i==$page) $pagecon .="n";
- else $pagecon .= "n";
- }
- $pagecon .=" ページ、合計 $lastpg ページ";
- }
- }else die('同じ名前の pageDivide() 関数はすでに存在します!');
- ?>
コードをコピー
require_once('mypage.php');- $result=mysql_query("select * from table", $myconn);
- $total=mysql_num_rows($result); //合計を取得します。情報の数
- pageDivide($total,10); //ページング関数を呼び出します。パラメータ 2 は各ページに表示される項目の数です
- //データベース操作、独自のデータベースのデータを選択します、これは単なる例です、データベースリンクは閉じられており、ここでは操作はありません。
- $result=mysql_query("select * from table limit $sqlfirst,$shownu", $myconn);
- while($row=mysql_fetch_array($result)){
- //データ操作
- }
- echo $pagecon; //ページ分割されたナビゲーション コンテンツを出力します
- ?>
-
コードをコピーします
|