ホームページ >php教程 >php手册 >例: PHP3 を使用して MySQL データのページング表示を実装する

例: PHP3 を使用して MySQL データのページング表示を実装する

WBOY
WBOYオリジナル
2016-06-21 09:13:401189ブラウズ

mysql|ページネーション|データ|表示

テーブルを作成し、テストデータ (mysql.sql) を生成します:
create table pagetest(
id int unsigned not null Primary key auto_increment,
name text not null
);
insert into pagetest(name) names('こんにちは、友人、Thisはページング テスト データです! ');
insert into pagetest(name)values('Article 2');
insert into pagetest(name)values('Article 3');
insert into pagetest(name)values( 'Article 4');
insert into pagetest(name)values('Article 5');
insert into pagetest(name)values('Article 6');
insert into pagetest(name)values('Article 7'); items');
insert into pagetest(name)values('Article 8');
insert into pagetest(name)values('Article 9');
insert into pagetest(name)values('Article 10 ');
insert into pagetest(name)values('第11条');
insert into pagetest(name)values('第12条');
insert into pagetest(name)values('第13条') ;

表示プログラム(mysql) .php3):
表示プログラム (mysql.php3) $pagesize = 2; ("ローカルホスト上の MySQL データベース サーバーに接続できません!");// localhost テストアカウントを持つホストそしてテストパスワード
$db = mysql_select_db("test") または die("テストデータベースに接続できません! ");

$sql = "select count(*) as total from pagetest";//レコード数をクエリする SQL ステートメントを生成します
$rst = mysql_query($sql) または die("SQL ステートメントを実行できません: $sql! ");//レコード数をクエリします
$row = mysql_fetch_array($rst) または die("No more records!");//レコードを取得します
$rowcount = $row["total"] ;//レコード数を取り出す
mysql_free_result($rst) または die("Cannot release result resource!");// 結果リソースを解放

$pagecount = bcdiv($rowcount+$pagesize-1,$pagesize,0) ;//合計何ページを計算しますか? if(!isset($pageno)) $pageno = 1;//pageno が設定されていない場合、デフォルトでは 1 ページが表示されます
if($pageno<1) $pageno = 1;//If pageno 1より小さい場合は1に設定
if($pageno>$pagecount) $pageno = $pagecount;//pagenoが総ページ数より大きい場合は最後のページに設定page

if($pageno> ;0){
$href = eregi_replace("%2f","/",urlencode($PHP_SELF));//$PHP_SELF を URL で使用できる文字列に変換します。中国語のディレクトリまたは中国語のファイル名を処理できること (if ($ Pageno & GT; 1) {// 裢 裢 & & lt; a href = "'. $ Href.'? Pageno = '. > 前のページを表示echo '< a href="'. $href. '?pageno='. '">' ;$i<=$pagecount;$i++){
echo '
} f ($ Pageno & LT; PageCount) {// 次のページを表示します 裢
echo' & lt; a href = "'. $ Href.'? Pageno = '. ($ Pageno+1). '">次のページ
;
}
echo '次のページ ';
}

$offset = ($pageno-1) * $pagesize;//テーブル全体におけるこのページの最初のレコードの位置を計算します (最初のレコードは 0)
$sql = "select * from pagetest LIMIT $offset,$pagesize";//このページのデータをクエリするための SQL ステートメントを生成します
$rst = mysql_query($sql);//このページのデータをクエリします
$num_fields = mysql_num_fields($ rst); // フィールドの総数を取得します
$i = 0; using using ‐ ‐ ’ ’ ’ ’ s ’ through ’ s ’ through ’ ‐ ‐ ‐ ‐ ‐ ‐ ‐ ‐ ‐ ‐ 1 対 1 +1 フィールドの名前 文字 $ i ++;
echo '& lt; cellpacing = "0" cellpadding = "0" & gt; 出力テーブルを開始します& lt; 試してください。 ';
while($row=mysql_fetch_array($rst)){//このページのデータを表示します
)=each($fields) ){//各フィールドの値を表示
; '; "); // 結果リソースを解放}
Else {
Echo" このテーブルにはデータがありません。 ";
}

mysql_close($server) or die("サーバーとの接続を切断できません!");//リソースを切断して解放します
?>









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