色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

為查詢結果建立向后/向前按鈕

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

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

<?php

$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)) {
    $offset=0;
}

// 取結果
$result=mysql_query("select id,name,phone ".
    "from TABLE where YOUR CONDITIONAL HERE ".
    "order by WHATEVER limit $offset,$limit");

// 現在可以顯示返回結果了
while ($data=mysql_fetch_array($result)) {
    // 在此處包含如你所愿的顯示結果代碼
}

// 接著我們需要生成其它結果的鏈接

if ($offset==1) { // 如果offset為0,則忽略PREV鏈接
    $prevoffset=$offset-20;
    print "<a href="$php_SELF?offset=$prevoffset">PREV</a>   n";
}

// 計算需要鏈接的頁面數
$pages=intval($numrows/$limit);

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

for ($i=1;$i<=$pages;$i++) { // 循環
    $newoffset=$limit*($i-1);
    print "<a href="$php_SELF?offset=$newoffset">$i</a>   n";
}

// 檢查是否為最后一頁
if (!(($offset/$limit)==$pages) && $pages!=1) {
    // 如果不是,則給出向后鏈接
    $newoffset=$offset+$limit;
    print "<a href="$php_SELF?offset=$newoffset">NEXT</a><p>n";
}

?>  

  這些對你來說可能有些用。當然,你可能想要使HTML的輸出更干凈一些...  

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

php技術為查詢結果建立向后/向前按鈕,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 封丘县| 施甸县| 常宁市| 平凉市| 惠东县| 车险| 德化县| 乌兰浩特市| 邮箱| 弥勒县| 襄城县| 普格县| 泸溪县| 南郑县| 雷州市| 北流市| 富蕴县| 沂南县| 巫山县| 同仁县| 扶风县| 大安市| 丰顺县| 惠州市| 镇平县| 鹤岗市| 南和县| 丘北县| 古蔺县| 崇明县| 察雅县| 蚌埠市| 准格尔旗| 连山| 巩义市| 常宁市| 申扎县| 丁青县| 桃园县| 徐汇区| 凤阳县|