Paparan halaman senarai dan carian kata kunci
Dalam bahagian ini, kita akan bercakap tentang paparan halaman dan fungsi carian kata kunci.
Untuk melakukan fungsi paging, kita mesti terlebih dahulu menyambung ke pangkalan data dan mendapatkan data. Dalam kebanyakan kes kita boleh menulis paging dan fungsi carian dalam halaman php yang sama.
Kemudian mari kita analisa proses fungsi paging:
Mula-mula kita perlu menetapkan berapa banyak item yang dipaparkan pada setiap halaman dan berapa banyak data yang ada secara keseluruhan, supaya kita tahu berapa banyak halaman yang ada secara keseluruhan dan halaman yang sedang kami paparkan.
Mari terangkan secara terperinci di bawah dengan membandingkan kod:
<?php //分頁(yè)功能 $pageSize = 5; //每頁(yè)顯示多少條記錄 $rowCount = 0; //共有多少條記錄 $pageNow = 1; //希望顯示第幾頁(yè) $pageCount = 0; //一共有多少頁(yè) //根據(jù)分頁(yè)鏈接來(lái)修改當(dāng)前頁(yè)的值 if (!empty($_GET['page'])) { $pageNow = $_GET['page']; } //這里是關(guān)鍵詞的搜索 $key=isset($_GET['key'])?'':$_GET['key'];//判斷前段頁(yè)面?zhèn)鬟f過(guò)來(lái)的關(guān)鍵詞是否存在 $cid=isset($_GET['cid'])?'':$_GET['cid']; $condition='1=1'; //這個(gè)條件是保證在搜索欄中沒(méi)有任何輸入的時(shí)候能正常顯示 if(!empty($key)){ $condition.=" and content LIKE '%{$key}%'"; } if(!empty($cid)){ $condition.=" and cid={$cid}"; } //根據(jù)分頁(yè)鏈接來(lái)修改 $pageNow的值。 $sql = "select count(*) from list WHERE {$condition}"; //根據(jù)$condition條件來(lái)進(jìn)行查詢 $res1 = mysqli_query($link,$sql);//將查詢的結(jié)果賦值給$res1 //取出行數(shù) if ($row = mysqli_fetch_row($res1)) { $rowCount = $row[0]; } //取得$rowCount,,進(jìn)而我們就知道了$pageCount這兩個(gè)數(shù)值了 //計(jì)算共有多少頁(yè) $pageCount = ceil($rowCount / $pageSize); $pageStart = ($pageNow - 1) * $pageSize; //發(fā)送帶有分頁(yè)的sql結(jié)果 //根據(jù)$sql語(yǔ)句的limit 后面的兩個(gè)值(起始值,每頁(yè)條數(shù)),來(lái)實(shí)現(xiàn)分頁(yè)。以及求得這兩個(gè)值。 $sql = "select * from list WHERE {$condition} order BY id limit $pageStart,$pageSize"; $res2 = mysqli_query($link,$sql) or die('無(wú)法獲取結(jié)果集' . mysqli_connect_error()); $prev = ($pageNow - 1 <= 0 )?1:$pageNow-1; //上一頁(yè) $next = ($pageNow + 1 > $pageCount)?$pageCount:$pageNow+1; //下一頁(yè) ?>
Kami meletakkan paging dan carian kata kunci pada satu halaman.
Di halaman hadapan kami, kami juga perlu membuat beberapa perubahan:
<a href="?page=<?php echo $prev;?>">上一頁(yè)</a> <?php for($i=1; $i<=$pageCount; $i++):?> <a href="?page=<?php echo $i;?> " <?php echo $i;?></a> <a href="?page=<?php echo $next;?>">下一頁(yè)</a>
Fungsi carian perlu mengitar keluar data yang kami cari berdasarkan kata kunci pada halaman hujung hadapan.
<li> <input type="text" placeholder="請(qǐng)輸入搜索關(guān)鍵字" name="key" class="input" style="width:250px; line-height:17px;display:inline-block" value="<?php echo $_GET['key'];?>"/> <input type="submit" name="sub" class="button border-main icon-search" value="搜索" /> </li>
Di atas adalah carian paging dan kata kunci yang kami perkenalkan Jika ada apa-apa yang anda tidak faham, anda boleh tinggalkan mesej dan saya akan membantu anda menjawabnya tepat pada masanya.