實作PHP搜尋加分頁實例分析

墨辰丷
發布: 2023-03-28 20:34:02
原創
1574 人瀏覽過

本文實作PHP搜尋加分頁,解決了大量數量瀏覽的分頁問題,力求讓看完這篇文章的朋友在看完以後對於分頁顯示的原理和實現方法有所了解。

分頁顯示是瀏覽大量資料的一種方法。對於初學者來說常常對這個問題摸不著頭緒,因此特地撰寫此文對這個問題進行詳細的講解,力求讓看完這篇文章的朋友在看完以後對於分頁顯示的原理和實現方法有所了解。

所有範例程式碼均使用php編寫。

所謂分頁顯示,也就是將資料庫中的結果集人為的分成一段一段的來顯示。

請詳細閱讀以下程式碼,自己偵錯執行一次,最好把它修改一次,加上自己的功能。

$wherelist=array();
$urlist=array();
if(!empty($_GET['title']))
{
$wherelist[]=" title like '%".$_GET['title']."%'";
$urllist[]="title=".$_GET['title'];
 
}
if(!empty($_GET['keywords']))
{
$wherelist[]=" keywords like '%".$_GET['keywords']."%'";
$urllist[]="keywords=".$_GET['keywords'];
}if(!empty($_GET['author']))
{
$wherelist[]=" author like '%".$_GET['author']."%'";
$urllist[]="author=".$_GET['author'];
}
$where="";
if(count($wherelist)>0)
{
$where=" where ".implode(' and ',$wherelist);
$url='&'.implode('&',$urllist);
}
//分页的实现原理
//1.获取数据表中总记录数
$sql="select count(*) from news $where ";
$result=mysql_query($sql);
$totalnum=mysql_num_rows($result);
//每页显示条数
$pagesize=5;
//总共有几页
$maxpage=ceil($totalnum/$pagesize);
$page=isset($_GET['page'])?$_GET['page']:1;
if($page <1)
{
$page=1;
}
if($page>$maxpage)
{
$page=$maxpage;
}
$limit=" limit ".($page-1)*$pagesize.",$pagesize";
$sql1="select * from news {$where} {$limit}";
 
//$sql1="select * from news {$where} {$limit}";
$res=mysql_query($sql1);
 
?>
<form action="searchpage.php" method="get">
标题:<input type="text" name="title" value="<?php echo $_GET[&#39;title&#39;]?>" size="8">
关键字<input type="text" name="keywords" value="<?php echo $_GET[&#39;keywords&#39;]?>" size="8">
作者:<input type="text" name="author" value="<?php echo $_GET[&#39;author&#39;]?>" size="8">
 <input type="button" value="查看全部" onclick="window.location=&#39;searchpage.php&#39;">
 <input type="submit" value="搜索">
</form>
 
<table border="1" width="1000" align="center">
 <tr>
 <td>编号</td>
 <td>标题</td>
 <td>关键字</td>
 <td>作者</td>
 <td>日期</td>
 <td>内容</td>
 </tr>
<?php while($row= mysql_fetch_assoc($res)){?>
<tr>
 <td><?php echo $row[&#39;id&#39;] ?></td>
 <td><?php echo $row[&#39;title&#39;] ?></td>
 <td><?php echo $row[&#39;keywords&#39;] ?></td>
 <td><?php echo $row[&#39;author&#39;] ?></td>
 <td><?php echo date("Y-m-d H:i:s",$row[&#39;addtime&#39;]) ?></td>
 <td><?php echo $row[&#39;content&#39;] ?></td>
 </tr>
<?php }?>
<tr>
 <td colspan="6">
<?php
 echo " 当前{$page}/{$maxpage}页 共{$totalnum}条";
echo " <a href=&#39;searchpage.php?page=1{$url}&#39;>首页</a> ";
echo "<a href=&#39;searchpage.php?page=".($page-1)."{$url}&#39;>上一页</a>";
echo "<a href=&#39;searchpage.php?page=".($page+1)."{$url}&#39;>下一页</a>";
echo " <a href=&#39;searchpage.php?page={$maxpage}{$url}&#39;>尾页</a> ";
 
?>
</td>
 </tr>
</table>
登入後複製

總結:以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。

相關推薦:

thinkPHP框架中執行事務的方法

PHP MySQL使用mysql_num_rows實作模糊查詢書籍資訊功能

php curl取得到json物件並轉成陣列array的方法

##

以上是實作PHP搜尋加分頁實例分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!