PHP分頁函數代碼(簡單實用型)_PHP教程
來源:互聯網
上載者:User
準備資料:
建立一個資料庫 test
執行下面的語句(建立一個表 test :id、sex、name 三個欄位)
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;
添加資料到 test 表,比如:
1 1 小強
2 0 小紅
3 0 小麗
4 1 小兵
5 1 張三
6 0 李四
7 0 吳欣
寫PHP語句(index.php):
複製代碼 代碼如下:
// Page分頁函數
$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)? 1 : $page - 1;
$next_page= ($page == $page_count)? $page_count : $page + 1 ;
$pagenav .= "第 $page/$page_count 頁 共 $rows 條記錄 ";
$pagenav .= "首頁 ";
$pagenav .= "前一頁 ";
$pagenav .= "後一頁 ";
$pagenav .= "末頁";
$pagenav.=" 跳到\n"; for($i=1;$i<=$page_count;$i++){ if($i==$page) $pagenav.="$i\n"; else $pagenav.="$i\n"; } } // Page分頁函數 // 使用樣本 if (!$conn= mysql_connect("localhost", "root" ,"root")) die('資料庫選擇失敗!'); if (!mysql_select_db("test", $conn)) die('資料庫選擇失敗!'); mysql_query('set names GBK'); // 用PageFunction Compute出 $select_from 從哪條記錄開始檢索、$pagenav 輸出分頁導航 $rows = mysql_num_rows(mysql_query("select * from test")); Page($rows,2); $sql = "select * from test limit $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 頁面, 該說byebye了,確實好用! 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['page']) : 1; $page_count = ceil($count / $page_size); $page_start = $page_current - 4; $page_end = $page_current + 4; if ($page_current < 5) { $page_start = 1; $page_end = 5; } if ($page_current > $page_count - 4) { $page_start = $page_count - 8; $page_end = $page_count; } if ($page_start < 1) $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 -> user -> 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 .= 'FIRST'; } for ($i = $page_start; $i <= $page_end; $i++) { if ($i == $page_current) { $pagebar .= "" . $i . ""; } else { $pagebar .= "" . $i . ""; } } if ($page_current != $page_count) { $pagebar .= "END"; } $pagebar .= ""; $pagebar .= " "; echo $pagebar; } http://www.bkjia.com/PHPjc/322617.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/322617.htmlTechArticle準備資料: 建立一個資料庫 test 執行下面的語句(建立一個表 test :id、sex、name 三個欄位) CREATE TABLE `test` ( `id` INT( 4 ) NOT NULL AUTO_INCREMEN...