ホームページ >php教程 >php手册 >PHPでのレコードページング表示例(再掲)

PHPでのレコードページング表示例(再掲)

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-21 09:12:131083ブラウズ

ページ|ディスプレイ

PHP ネットワーク データベースをプログラミングする場合、美しいページを表示し、ページの読み込み速度を向上させるために、データベース レコードをページ単位で表示する必要があります。

ここで、PHP と完全に統合された MySQL データベース レコードのページング表示の例を共有します。

MySQL データベースは XinXiKu で、データ テーブルはジョークです。その定義SQL文は以下の通りです:

CREATE TABLE冗談(
id int(5) NOT NULL auto_increment,
biaoti varchar(40) NOT NULL,
neirong text NOT NULL,
PRIMARY KEY (id)
);
フィールド説明:

id :自動的にインクリメントされるレコード番号と主キー

biaoti :Title

neirong:Content



ページ表示実装方法</ title> ;<br/><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><br><script language="javascript"><br>/* 表示するポップアップ ウィンドウを定義します特定のコンテンツ */<br>function Popwin(url)<br>{ <br>window.open(url,"","left=340, top=190, height=280, width=400, resizable=yes, スクロールバー=yes, status=no 、ツールバー = いいえ、メニューバー = いいえ、場所 = いいえ");<br>}<br></script><br></head><br><br><body leftMargin=0 topMargin=0 rightmargin=0 ><br><br><? php<br/> //データベースに接続します<br/>$db=mysql_connect("localhost","root","");<br/>mysql_select_db("XinXiKu",$db);<br/>//各ページに表示されるレコード数を設定します<br/> $pagesize=15 ;<br/>//レコードの総数を取得し、<br/>$res=mysql_query("select count(*) from Joke " ,$db);<br/>$myrow = mysql_fetch_array($res) を使用して総ページ数を計算します。 );<br/>$numrows=$myrow[ 0];<br/>//総ページ数を計算します<br/>$pages=intval($numrows/$pagesize);<br/>if ($numrows%$pagesize)<br/>$pages++;<br/>//ページ数が設定されているかどうかを判断し、設定されていない場合は定義します ホームページの場合<br/>if (!isset($page))<br/>$page=1;<br/>//移動先のページ数を判断します<br/>if (isset ($ys))<br/>if ($ys>$pages)<br/>$page=$pages ;<br/>else<br/>$page=$ys;<br/>//レコードオフセットを計算<br/>$offset=$pagesize*($page-1); <br/>//レコードを取得<br/>$res=mysql_query("select id,biaoti from Jordan by id desc limit $offset,$pagesize" ,$db);<br/>//レコード表示をループ<br/>if ($myrow = mysql_fetch_array($res) ))<br/>{<br/>$i=0;<br/>?> <br><table width="101%" border="0" cellpacing="0" cellpadding="0"><br><tr><br><td width="5%" bgcolor="#E1E9FB"></td> ;<br/><td width="95%" bgcolor="#E1E9FB"><font color="#FF6666" size="2 ">content</font></td><br></ tr><br><?php<br/>do {<br/>$i++;<br/>?><br><tr><br><td width="5%" bgcolor="#E6F2FF"><?php echo $i;? ></td><br><td width="95%" bgcolor="#E6F2FF"><font size="2" ><br><a href="javascript:popwin('jokenr.php ?id=<?php echo $myrow[0];?>')" ><?php echo $myrow[1]; ?></a></font></td> ;<br/></tr><br><?php<br/>}<br/>while ($myrow = mysql_fetch_array($res));<br/>echo "</ table>" ;<br>}<br>//総ページ数を表示<br>echo "< ;div align='center'>".$pages." ページがあります (".$page."/".$pages. ")<br>";<br>//($i =1;$i<$page;$i++)<br/>のページ数を表示します<br/>echo "<a href='fy.php?page=。 $i."'>page ".$i ."</a> " ;<br/>echo "ページ ".$page." ";<br/>for ($i=$page+1;$i<=$pages ;$i++)<br/>echo "<a href='fy.php?page= ".$i."'>ページ ".$i ."</a> ";<br><br>echo "<br> ";<br>//ページ番号を表示<br>echo "<form action= 'fy.php' method='post'> ";<br>//最初のページ、前のページ、次のページのページ値を計算します、最後のページ<br>$first=1;<br>$prev=$page-1;<br>$ next=$page+1;<br>$last=$pages;<br>if ($page>1)<br>{<br>echo "< a href='fy.php?page=".$first."'>ホームページ< ;/a> ";<br>echo "<a href='fy.php?page=".$prev."'>前のページ</a> ";<br>}<br>if ($page<$pages )<br/>{<br/>echo "<a href='fy.php?page=".$next."'>次のページ</a> ; ";<br/>echo "<a href='fy.php?'>最後のページ</a>echo "<input type=text name='ys' size='2' value=".$page.">page";<br>echo "<input type=submit name='Submit' value=' に移動'>";<br>echo "</form>";<br/>echo "</div>";<br><br>?><br></body><br></html><br></b>プログラムの説明: <br><br> 1 . 変数の説明<br><br>変数 $page : 現在表示するページ番号を格納します。 <br><br>変数 $pages: 総ページ数を保存します。 <br><br>変数 $offset: 現在のページ番号のオフセットを保存します。 <br><br>変数 $pagesize: 各ページに表示されるレコードの数を保存します。 <br><br>2. MySQL ステートメントの説明 <br><br><b>select id,biaoti from Jordan order by id desc limit $offset,$pagesize</b> <br>LIMIT 句は、SELECT ステートメントによって返される行数を制限するために使用されます。 LIMIT の最初のパラメータは返される最初の行のオフセットを指定し、2 番目のパラメータは返される行の最大数 (pagesize) を指定します。 <br><br>実装原理: <br><br> レコードを取得するときに、プログラム内でページ番号変数 page を渡し、渡されたページ値に基づいて初期レコード位置オフセットを計算し、表示する必要があるレコードの数に基づいてレコード セットを取得します。各ページのページサイズ。それからそれを表示します。 <br><br>プログラム実装関数: <br><br>プログラムは、ページ表示の 2 つの方法を提供します (現在のページが 3 ページ目であると仮定します)。 <br><br>1. すべてのページ番号を表示し、ページ数に基づいてリンクを提供します。 現在のページにはリンクが提供されていません。ページ数がそれほど多くない場合に適しています。スタイルを図 1 に示します。 <br><br>http://www.ccidnet.com/html/tech/web/2001/05/22/image/1.jpg <br>2. 合計ページ数を指定し、提供されたホームページ、前のページ、次のページ、最後のページを介してページを移動し、ジャンプして達成します。もちろん、現在のページがすべてのページである場合には、トップページおよび前のページへのリンクは提供されず、現在のページが最後のページである場合には、次のページおよび最後のページへのリンクは提供されない。スタイルを図 2 に示します。 <br><br>http://www.ccidnet.com/html/tech/web/2001/05/22/image/2.jpg <br> </p> <center> </center> <p style="width:100%;text-align:center;margin:10px 0"> <br> <br> </p> <p style="width:100%;text-align:center;margin:10px 0"> </p> <p class="clear"></p></div><div class="nphpQianMsg"><div class="clear"></div></div><div class="nphpQianSheng"><span>声明:</span><div>この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。</div></div></div><div class="nphpSytBox"><span>前の記事:<a class="dBlack" title="非再帰的な方法でフォーラムのツリー構造とページングを実装します。 ! (思いつきです、笑)" href="https://m.php.cn/ja/faq/240895.html">非再帰的な方法でフォーラムのツリー構造とページングを実装します。 ! (思いつきです、笑)</a></span><span>次の記事:<a class="dBlack" title="非再帰的な方法でフォーラムのツリー構造とページングを実装します。 ! (思いつきです、笑)" href="https://m.php.cn/ja/faq/240901.html">非再帰的な方法でフォーラムのツリー構造とページングを実装します。 ! (思いつきです、笑)</a></span></div><div class="nphpSytBox2"><div class="nphpZbktTitle"><h2>関連記事</h2><em><a href="https://m.php.cn/ja/article.html" class="bBlack"><i>続きを見る</i><b></b></a></em><div class="clear"></div></div><ins class="adsbygoogle" style="display:block" data-ad-format="fluid" data-ad-layout-key="-6t+ed+2i-1n-4w" data-ad-client="ca-pub-5902227090019525" data-ad-slot="8966999616"></ins><script> (adsbygoogle = window.adsbygoogle || []).push({}); </script><ul class="nphpXgwzList"><li><b></b><a href="https://m.php.cn/ja/faq/92233.html" title="Windows7系统下Netbeans+PHPUnit搭建PHP单元测试开发环境及PHPUn" class="aBlack">Windows7系统下Netbeans+PHPUnit搭建PHP单元测试开发环境及PHPUn</a><div class="clear"></div></li><li><b></b><a href="https://m.php.cn/ja/faq/97151.html" title="程序猿ProMonkey V2.03" class="aBlack">程序猿ProMonkey V2.03</a><div class="clear"></div></li><li><b></b><a href="https://m.php.cn/ja/faq/94770.html" title="PHP Navigator" class="aBlack">PHP Navigator</a><div class="clear"></div></li><li><b></b><a href="https://m.php.cn/ja/faq/90182.html" title="php返回数组中指定的一列(php5.5.0默认函数array_column()在php" class="aBlack">php返回数组中指定的一列(php5.5.0默认函数array_column()在php</a><div class="clear"></div></li><li><b></b><a href="https://m.php.cn/ja/faq/208396.html" title="htmlentitiesとhtmlspecialcharsの違いの詳しい説明" class="aBlack">htmlentitiesとhtmlspecialcharsの違いの詳しい説明</a><div class="clear"></div></li></ul></div></div><ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5902227090019525" data-ad-slot="5027754603"></ins><script> (adsbygoogle = window.adsbygoogle || []).push({}); </script><footer><div class="footer"><div class="footertop"><img src="/static/imghwm/logo.png" alt=""><p>福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!</p></div><div class="footermid"><a href="https://m.php.cn/ja/about/us.html">私たちについて</a><a href="https://m.php.cn/ja/about/disclaimer.html">免責事項</a><a href="https://m.php.cn/ja/update/article_0_1.html">Sitemap</a></div><div class="footerbottom"><p> © php.cn All rights reserved </p></div></div></footer><script>isLogin = 0;</script><script type="text/javascript" src="/static/layui/layui.js"></script><script type="text/javascript" src="/static/js/global.js?4.9.47"></script></div><script src="https://vdse.bdstatic.com//search-video.v1.min.js"></script><link rel='stylesheet' id='_main-css' href='/static/css/viewer.min.css' type='text/css' media='all'/><script type='text/javascript' src='/static/js/viewer.min.js?1'></script><script type='text/javascript' src='/static/js/jquery-viewer.min.js'></script><script>jQuery.fn.wait = function (func, times, interval) { var _times = times || -1, //100次 _interval = interval || 20, //20毫秒每次 _self = this, _selector = this.selector, //选择器 _iIntervalID; //定时器id if( this.length ){ //如果已经获取到了,就直接执行函数 func && func.call(this); } else { _iIntervalID = setInterval(function() { if(!_times) { //是0就退出 clearInterval(_iIntervalID); } _times <= 0 || _times--; //如果是正数就 -- _self = $(_selector); //再次选择 if( _self.length ) { //判断是否取到 func && func.call(_self); clearInterval(_iIntervalID); } }, _interval); } return this; } $("table.syntaxhighlighter").wait(function() { $('table.syntaxhighlighter').append("<p class='cnblogs_code_footer'><span class='cnblogs_code_footer_icon'></span></p>"); }); $(document).on("click", ".cnblogs_code_footer",function(){ $(this).parents('table.syntaxhighlighter').css('display','inline-table');$(this).hide(); }); $('.nphpQianCont').viewer({navbar:true,title:false,toolbar:false,movable:false,viewed:function(){$('img').click(function(){$('.viewer-close').trigger('click');});}}); </script></body><!-- Matomo --><script> var _paq = window._paq = window._paq || []; /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function() { var u="https://tongji.php.cn/"; _paq.push(['setTrackerUrl', u+'matomo.php']); _paq.push(['setSiteId', '9']); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); })(); </script><!-- End Matomo Code --></html>