為查詢結果建立向後/向前按鈕_PHP教學課程

WBOY
發布: 2016-07-21 16:02:36
原創
904 人瀏覽過

最近在Support Forums上有很多問題都是關於如何為一個搜尋結果製作象"向後 1 2 3 4 5 向前"樣子 的連結。我希望下面的腳本可以幫助你,在你的搜尋結果頁面中加入這種功能。這個例子是專為MySQL所寫 的,但是對於其它的SQL引擎也可以很容易地適應。

  因為每種應用都是不同的,這樣我使用了一些通用的語句進行MySQL查詢處理。 TABLE名稱應該要替換成你的 實際表名。 YOUR CONDITIONAL HERE應該替換成你的where 條件,並且WHATEVER應該替換成你希望對結果進 行排序的字段(如果你的應用需要降序排列,不要忘記加上DESC)。


$limit=20; // 傳回的行
$numresults=mysql_query("select * from TABLE where YOUR CONDITIONAL HERE order by WHATEVER")
$numrows=mysql_num_rows($numresults);

// 接著判斷是否offset已經傳給腳本了,如果沒有設為0
if (empty($offset)) {
 $   =0;
}

// 取結果
$result=mysql_query("select id,name,phone ".
    "from TABLE where YOUR CONDITION🎜>    "from TABLE訂購 by WHATEVER limit $offset,$limit");

// 現在可以顯示回傳結果了
while ($data=mysql_fetch_array($result)) {
 如你所願的顯示結果代碼
}

// 接著我們需要產生其它結果的連結

if ($offset==1) { // 如果offset為0,則忽略PREV連結
    $prevoffset=$offset-20;
    print "PREV   n";



// 計算需要連結的頁數
$pages=intval($numrows/$limit);

// 如果除後沒有餘數,$pages 現在包含需要頁面的整數值
if ($numrows%$limit) {
    // 若有餘數那麼增加一頁
    $pages ;
}

for ($i=1;$i    $newoffset=$limit*($i-1);
    print "$i n";
}

// 檢查是否為最後一頁
if (!(($offset/$limit)==$pages) && $pages!=1) {
    // 如果不是下一頁,則給予向後連結
    $newoffset=$offset $limit;
    print "NEXTn";
}

?>  

  這些對你來說可能有些用。當然,你可能想要讓HTML的輸出更乾淨一些...  

  而且,請注意在$PHP_SELF後的連結只包含了$offset。如果你需要為查詢的where條件傳遞參數的話, 你也需也需要把這些補在上面。  

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/316509.htmlTechArticle最近在Support Forums上有很多問題都是關於如何為一個搜尋結果製作象向後1 2 3 4 5 向前樣子的連結。我希望下面的腳本可以幫助你,在你的搜尋...
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板