ホームページ >php教程 >php手册 >PHP ページング関数コード (シンプルで実用的)

PHP ページング関数コード (シンプルで実用的)

WBOY
WBOYオリジナル
2016-06-13 12:12:532062ブラウズ

データを準備します:

新しいデータベース テストを作成します
次のステートメントを実行します (新しいテーブル テストを作成します: id、性別、名前の 3 つのフィールド)

CREATE TABLE `test` (
`id` INT( 4 ) NOT NULL AUTO_INCREMENT PRIMARY KEY 、
`sex` INT( 1 ) NOT NULL 、
`name` VARCHAR( 20 ) NOT NULL ) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_bin;

テスト テーブルにデータを追加します。例:
1 1 Xiaoqiang
2 0 Xiaohong
3 0 Xiaoli
4 1 Xiaobing
5 1 Zhang San
6 0 Li Si
7 0 Wu Xin

PHP ステートメント (index.php) を書き込みます:

コードをコピー コードは次のとおりです


// ページ ページング関数
$page = $_GET["page"];
function Page($rows,$page_size){
global $ page,$select_from,$select_limit,$pagenav;
$page_count = ceil($rows/$page_size);
if($page <= 1 || $page == '' ) $page = 1 ;
if($page >= $page_count) $page = $page_count;
$select_limit = $page_size
$select_from = ($page - 1) * $page_size; ',';
$pre_page = ($page == 1)?
$next_page= ($page == $page_count) :
$pagenav .= " ページ $page/$page_count 合計 $rows レコード
$pagenav .= "ホームページ "; .= "前のページ ";
$pagenav .= "次のページ < ;/a> ";
$pagenav .= "
最後のページ";
$pagenav.= にジャンプ< 'toppage' size='1' onchange='window.location="?page=" this.value'>n";
for($i=1;$i<=$page_count;$ i ){
if($i==$page) $pagenav.="<オプション値='$i' selected>$in";
else $pagenav.="<オプション値='$i'>$in";
}
} // ページング関数
// 使用例
if (!$conn= mysql_connect( "localhost" , "root" ,"root")) die('データベースの選択に失敗しました! ');
if (!mysql_select_db("test", $conn)) die('データベースの選択に失敗しました!');
mysql_query('set names GBK'); // Page 関数を使用して計算します取得を開始するレコードの出力 $select_from、$pagenav 出力ページング ナビゲーション
$rows = mysql_num_rows("select * from test"));
Page($rows,2); "select * from テスト制限 $select_from $select_limit";
$rst = mysql_query($sql)
while ($row = mysql_fetch_array($rst)){
echo "$row[id] - $row[sex] - $row[name]


";
}
echo $pagenav;
?>


index.php を参照画像に示すページ:

さよならを言う時間です。使い方はとても簡単です。


PHP の簡単なページング関数

簡単な PHP のページング関数を記述します。データベース呼び出しも記述されていますので、使用する人は自分で削除できます。

コードをコピー

コードは次のとおりです:


function getask(){
$sql = "select * from cms_ask where ansower <> ' ' ";
//ここで必要な変更方法
$q_sq = mysql_query($sql);
$count = mysql_num_rows($q_sq);
$page_size = 8;
$page_current = isset($GLOBALS['page']) ? intval($GLOBALS['ページ']) : 1;
$page_count = ceil($count / $page_size);
$page_start = $page_current - 4;
$page_end = $page_current 4;
if ($page_current $page_start = 1;
$page_end = 5;
}
if ($page_current > $page_count - 4) {
$page_start = $page_count - 8;
$page_end = $page_count;
}
if ($page_start $page_start = 1;
if ($page_end > $page_count)
$page_end = $page_count;
$pagebar = "";
$sql = "select * from cms_ask where ansower <> ' ' order by id desc limit " . (($page_current - 1) * $page_size) 。 「、」。 $page_size;
$row=$this ->ユーザー -> getall("$sql");
foreach($row as $v){
echo '

问:'.$v["question"].'
答:' .$v["ansower"].date("Y-m-d H:i:s",$v["postTime"]).'
';

}

$pagebar .= "
";
$pagebar .= "
    ";
    if ($page_current != 1) {
    $pagebar .= '
  1. FIRST< ;/リ>';
    }
    for ($i = $page_start; $i <= $page_end; $i ) {
    if ($i == $page_current) {
    $pagebar .= "< li>" 。 $i 。 "
  2. ";
    } else {
    $pagebar .= "
  3. " 。 $i 。 "
  4. ";
    }
    }

    if ($page_current != $page_count) {
    $pagebar .= "
  5. END
  6. ";
    }
    $pagebar .= "
";
$pagebar .= "
";
echo $pagebar;
}

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