分頁,搜尋後保留搜尋條件分頁

2021-07-09 11:00:52 字數 3210 閱讀 7263

先寫乙個簡單的分頁,供初學者參考:

header("content-type:text/html;charset=utf8");

// 建立乙個資料來源,若資料來自於mysql ,此處請改為mysql獲取資料 注意limit使用 limit($offset, $length) $offset 為偏移量,從第幾個開始(下標從0開始) $length 是獲取資料長度 此處獲取結果為$arr.

$a = array(

array("id" => 1, "name" => "qwe"),

array("id" => 2, "name" => "fds"),

array("id" => 3, "name" => "gre"),

array("id" => 4, "name" => "cvb"),

array("id" => 5, "name" => "grh"),

array("id" => 6, "name" => "zxc"),

array("id" => 7, "name" => "zxz"),

array("id" => 8, "name" => "fgf"),

);// array_slice 陣列擷取

$arr = array_slice($a, 0, 2);

?>

"/>

idname

<?php foreach ($arr as $v) ?>

首頁腳頁

再建立檔案b.php, 複製以下內容

// 資料來源

$a = array(

array("id" => 1, "name" => "qwe"),

array("id" => 2, "name" => "fds"),

array("id" => 3, "name" => "gre"),

array("id" => 4, "name" => "cvb"),

array("id" => 5, "name" => "grh"),

array("id" => 6, "name" => "zxc"),

array("id" => 7, "name" => "zxz"),

array("id" => 8, "name" => "fgf"),

);// 獲取當前頁面應該展示的資料

$page = $_get['now'] ? $_get['now'] : 1;

$offset = ($page-1)*2;

$resurt = array_slice($a, $offset, 2);

// 返回資料 json

echo json_encode($resurt);

之後訪問 http://yourdomainname/a.php,就可以看到所需要的效果了。

之後呢,我們需要搜尋保留條件分頁,其實只需要在原分頁基礎上對展示資料進行搜尋處理,並且能夠保證搜尋條件保留,呢麼我們的搜尋分頁也就完成了:

a.php

header("content-type:text/html;charset=utf8");

// 獲取當前展示資料

$a = array(

array("id" => 1, "name" => "qwe"),

array("id" => 2, "name" => "fds"),

array("id" => 3, "name" => "gre"),

array("id" => 4, "name" => "cvb"),

array("id" => 5, "name" => "grh"),

array("id" => 6, "name" => "zxc"),

array("id" => 7, "name" => "zxz"),

array("id" => 8, "name" => "fgf"),

array("id" => 9, "name" => "fgf"),

array("id" => 10, "name" => "fgf"),

array("id" => 11, "name" => "fgf"),

);$arr = array_slice($a, 0, 2);

?>

"/>

idname

<?php foreach ($arr as $v) ?>

首頁腳頁

b.php

$a = array(

array("id" => 1, "name" => "qwe"),

array("id" => 2, "name" => "fds"),

array("id" => 3, "name" => "gre"),

array("id" => 4, "name" => "cvb"),

array("id" => 5, "name" => "grh"),

array("id" => 6, "name" => "zxc"),

array("id" => 7, "name" => "zxz"),

array("id" => 8, "name" => "fgf"),

array("id" => 9, "name" => "fgf"),

array("id" => 10, "name" => "fgf"),

array("id" => 11, "name" => "fgf"),

);// 獲取資料

$page = $_get['now'] ? $_get['now'] : 1;

$sear = $_get['sear'] ? $_get['sear'] : "";

$b = $a;

// 搜尋 此處應該改為資料庫搜尋,只是做乙個模擬

if (!empty($sear))

}}$offset = ($page-1)*2;

$resurt = array_slice($b, $offset, 2);

$count = ceil(count($b)/2);

// 處理結果返回

echo json_encode(array('resurt' => $resurt, 'count' => $count));

瀏覽器重新整理a.php,看到的就是你想要的結果了!!!

THINKPHP實現搜尋分頁保留搜尋條件

使用tp自帶的分頁類時,裡面自帶了post查詢條件保留機制,但是之針對於普通的map一維陣列,如果包含like,gt等等比較複雜的查詢條件則力不從心了.如果是post方式查詢,如何確保分頁之後能夠保持原先的查詢條件呢,我們可以給分頁類傳入引數,方法是給分頁類的parameter屬性賦值 count ...

CI框架增加條件搜尋,分頁

在網上找了半天,沒有乙個能寫明白的,到的怎麼使用帶條件分頁,我這裡用簡單說明實現它!1.使用ci框架分頁類,如果帶搜尋條件,首先要可以接收搜尋內容 cateid this input get post select cate searchkey this input get post searchk...

搜尋後分頁

搜尋頁面 控制器 class spcontroller extends controller public function actionsearch else db new page search ac db find where username like price count 接受分頁的值 ...