php搜索两个日期之间的数据,进行分页后,点击下一页时出错,是怎么回事?
我先搜索了所有记录,后进行分页,用了下面的代码:sql:$sql="select*from$TABLEwheredate>='$dbd'anddate<='$ded'li...
我先搜索了所有记录,后进行分页,用了下面的代码:
sql:$sql="select * from $TABLE wheredate >='$dbd' and date <='$ded' limit $page_size offset $pp";
<a href=\"c.php?page=".$pa."&date=".$dbd."\">下一页</a>
当我输入时间点击搜索,出来的结果是正确的,但是,点击下一页的时候,显示的是所有记录。
对PHP不是很懂,不知道哪里的问题。 展开
sql:$sql="select * from $TABLE wheredate >='$dbd' and date <='$ded' limit $page_size offset $pp";
<a href=\"c.php?page=".$pa."&date=".$dbd."\">下一页</a>
当我输入时间点击搜索,出来的结果是正确的,但是,点击下一页的时候,显示的是所有记录。
对PHP不是很懂,不知道哪里的问题。 展开
展开全部
保持url语句最后面的查询条件。
自己根据需要做修改
$date=$_GET['date'];
<?php
//开始封装搜索信息
$wherelist=array(); // 搜索语句
$userlist=array(); // 保存url的搜索条件语句
if(!empty($date)){
$wherelist[]="date between '$dbd' and '$ded'"; //
$urllist="date={$_GET['date']}";
}
//判断$wherelist有值时封装sql搜索语句
$where="";
$url="";
if(count($wherelist)>0){
$where=" where ".implode(" and ",$wherelist);
$url="&".$urllist;
}
//封装搜索信息结束
//分页信息处理开始
$page=isset($_GET['page'])?$_GET['page']:1;//默认为第一页
$line=10;//每页显示行数
$maxpage=0;//最大页数
$maxrow=0;//最大数据条数
$sum_sql="select count(*) from $TABLE {$where}";//根据所填搜索信息查询相关数据取总数
$res=mysql_query($sum_sql,$link);
$maxrow=mysql_result($res,0,0);
$maxpage=ceil($maxrow/$line);//计算最大页数(进一取整)
if($page>$maxpage){
$page=$maxpage;//锁定最大页数
}
if($page<1){
$page=1;//页面不为负数
}
$limit=" limit ".($page-1)*$line.",".$line;//(当前页-1)*页大小,页大小
/* 分页处理结束 */
自己根据需要做修改
$date=$_GET['date'];
<?php
//开始封装搜索信息
$wherelist=array(); // 搜索语句
$userlist=array(); // 保存url的搜索条件语句
if(!empty($date)){
$wherelist[]="date between '$dbd' and '$ded'"; //
$urllist="date={$_GET['date']}";
}
//判断$wherelist有值时封装sql搜索语句
$where="";
$url="";
if(count($wherelist)>0){
$where=" where ".implode(" and ",$wherelist);
$url="&".$urllist;
}
//封装搜索信息结束
//分页信息处理开始
$page=isset($_GET['page'])?$_GET['page']:1;//默认为第一页
$line=10;//每页显示行数
$maxpage=0;//最大页数
$maxrow=0;//最大数据条数
$sum_sql="select count(*) from $TABLE {$where}";//根据所填搜索信息查询相关数据取总数
$res=mysql_query($sum_sql,$link);
$maxrow=mysql_result($res,0,0);
$maxpage=ceil($maxrow/$line);//计算最大页数(进一取整)
if($page>$maxpage){
$page=$maxpage;//锁定最大页数
}
if($page<1){
$page=1;//页面不为负数
}
$limit=" limit ".($page-1)*$line.",".$line;//(当前页-1)*页大小,页大小
/* 分页处理结束 */
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询