怎么把查询和分页一起实现

WBOY
Freigeben: 2016-06-23 13:59:35
Original
1271 Leute haben es durchsucht

查询 和 分页都能实现 就是不知道怎么把两个合在一起 
代码如下

$page=isset($_GET['page'])?$_GET['page']:1; $pagesize=20; $sql="SELECT count(*) from khxx";$res=mysql_query($sql);$maxrows=mysql_result($res,0,0);$maxpages=ceil($maxrows/$pagesize);if($page>$maxpages){	$page=$maxpages;}if($page<1){	$page=1;}$limit=" limit ".(($page-1)*$pagesize).",{$pagesize}";if (!empty($_GET[keys])) {			$keys=$_GET['keys'];			$ww="`dates` like '%".$keys."%' or `area` like '%".$keys."%' ;			$wh="where {$ww}";		}
Nach dem Login kopieren

		<form action="khall.php" method="get">			<input class="inp" type="text" name="keys"/ >			<input class="sub" type="submit" value="查询"/>		</form>			</tr>			<tr>			<?php echo "当前{$page}/{$maxpages}页 共计{$maxrows}条";					  echo "<a href='khall.php?page=1'>首页</a>";					  echo "<a href='khall.php?page=".($page-1)."'>上一页</a>";					  echo "<a href='khall.php?page=".($page+1)."'>下一页</a>";					  echo "<a href='khall.php?page={$maxpages}'>末页</a>";				?>                       </tr>
Nach dem Login kopieren

<?php						$sql="SELECT * FROM `khxx` {$wh} order by id desc {$limit}";			$query=mysql_query($sql);			while ($rs=mysql_fetch_array($query)){		?>
Nach dem Login kopieren


回复讨论(解决方案)

还要怎么整合?
sql查询的就是当前页的内容。也就是说,你只需要把当前页查询出来的内容展示出来,然后编好页码就行了。

<?php$page=isset($_GET['page'])?$_GET['page']:1; $pagesize=20; if (!empty($_GET[keys])) {   $keys=$_GET['keys'];   $ww="`dates` like '%".$keys."%' or `area` like '%".$keys."%' ";   $wh="where {$ww}";}else{    $wh = ""}$sql="SELECT count(*) from khxx ".$wh; // 计算总数时加入搜索条件 $res=mysql_query($sql);$maxrows=mysql_result($res,0,0);$maxpages=ceil($maxrows/$pagesize);if($page>$maxpages){    $page=$maxpages;}if($page<1){    $page=1;}$limit=" limit ".(($page-1)*$pagesize).",{$pagesize}";// 查询当前页记录 $sql="SELECT * FROM `khxx` {$wh} order by id desc {$limit}";$query=mysql_query($sql);while ($rs=mysql_fetch_array($query)){?>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

还要怎么整合?
sql查询的就是当前页的内容。也就是说,你只需要把当前页查询出来的内容展示出来,然后编好页码就行了。
是我没说清楚
我写的有个问题就是 点下一页后 当前的查询状态就消失了 想问下 怎么写才可以把查询加入到分页中

<?php$page=isset($_GET['page'])?$_GET['page']:1; $pagesize=20; if (!empty($_GET[keys])) {   $keys=$_GET['keys'];   $ww="`dates` like '%".$keys."%' or `area` like '%".$keys."%' ";   $wh="where {$ww}";}else{    $wh = ""}$sql="SELECT count(*) from khxx ".$wh; // 计算总数时加入搜索条件 $res=mysql_query($sql);$maxrows=mysql_result($res,0,0);$maxpages=ceil($maxrows/$pagesize);if($page>$maxpages){    $page=$maxpages;}if($page<1){    $page=1;}$limit=" limit ".(($page-1)*$pagesize).",{$pagesize}";// 查询当前页记录 $sql="SELECT * FROM `khxx` {$wh} order by id desc {$limit}";$query=mysql_query($sql);while ($rs=mysql_fetch_array($query)){?>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

效果和我写的差不多
我写的有个问题就是 点下一页后 当前的查询状态就消失了 想问下 怎么写才可以把查询加入到分页

你得把搜索的字段 写进URL里面 然后传参 那样才行吧

你得把搜索的字段 写进URL里面 然后传参 那样才行吧
就是不知道怎么写 没思路

你的翻页条中没有附加查询条件


你得把搜索的字段 写进URL里面 然后传参 那样才行吧
就是不知道怎么写 没思路

echo "<a href='khall.php?keys=$_GET['keys']&page=".($page-1)."'>上一页</a>";
Nach dem Login kopieren

你把分页URL上都加上 这个 查询字段 应该就可以了


<?php$page=isset($_GET['page'])?$_GET['page']:1; $pagesize=20; if (!empty($_GET[keys])) {   $keys=$_GET['keys'];   $ww="`dates` like '%".$keys."%' or `area` like '%".$keys."%' ";   $wh="where {$ww}";}else{    $wh = ""}$sql="SELECT count(*) from khxx ".$wh; // 计算总数时加入搜索条件 $res=mysql_query($sql);$maxrows=mysql_result($res,0,0);$maxpages=ceil($maxrows/$pagesize);if($page>$maxpages){    $page=$maxpages;}if($page<1){    $page=1;}$limit=" limit ".(($page-1)*$pagesize).",{$pagesize}";// 查询当前页记录 $sql="SELECT * FROM `khxx` {$wh} order by id desc {$limit}";$query=mysql_query($sql);while ($rs=mysql_fetch_array($query)){?>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

效果和我写的差不多 
我写的有个问题就是 点下一页后 当前的查询状态就消失了 想问下 怎么写才可以把查询加入到分页

那你需要在翻?的url中加入条件参数,例如下一页需要这样写
echo "下一页";

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage