复杂检索数据并分页显示的处理方法


Posted in PHP onOctober 09, 2006

系统标题:复杂检索数据并分页显示的处理方法
系统功能:利用临时表检索数据库数据,然后分页显示的方法:
处理方法:采用临时表存放数据中间结果,根据中间结果显示数据
          数据的显示采用隔行的方式处理
处理优点:对于复杂的查询,特别是涉及到多表的数据查询,如果直接使用查询条件,系统的
          开销将很大,利用临时表把数据先保存,然后处理。这样对数据库的查询只要开销一次。
使用方法:只要把连接数据库的用户信息和数据表改变即可使用

<?
  //连接数据库
  $dbh =  mysql_connect('localhost:3306','root','');
  mysql_select_db('test');  

  //把数据检索的结果保存到临时表中
   $ls_sql  = ' create temporary table temps ';
   $ls_sql .= ' select lk_title,lk_link from  lk_t_content ';
   $ls_sql .= " where lk_title like '%".$searchcontent."%' ";
   $res = mysql_query($ls_sql, $dbh);

  //得到检索数据的总数   
   $ls_sql = 'select count(*) as rcnt_con from temps ';
   $res = mysql_query($ls_sql, $dbh);
   $rcon = $row["rcnt_con"];   

   $pages=ceil($rcon / 20); //$pages变量现在总的页数   
   if (empty($offset))  {
       $offset=1;   
       $curline = 0;
    } else
      $curline = ($offset - 1) * 20;
   //打印表头
   print '<table width="100%" border="0">';
   print '<tr class="text"> <td width="50%">  <div align="center">';
   if ($offset <> 1) { //如果偏移量是0,不显示前一页的链接   
     $newoffset=$offset - 1;   
     print "<a href='$PHP_SELF?offset=$newoffset'>前一页</a>";   
   }  else {
     print "前一页";
     print "   ";
   }
  //显示所有的页数   
  for ($i=1; $i <= $pages; $i++)  {
    $temps = "<a href='".$PHP_SELF.'?offset='.$i."'>".$i."</a>";
    print $temps;   
    print "   ";
  }   
  //检查是否是最后一页   
  if ($pages!=0 && $offset!=$pages)  {
     $newoffset=$offset+1;   
     print "<a href='$PHP_SELF?offset=$newoffset'>下一页</a>";   
  }  else print "下一页";
  print '</div> </td>';
  print '<td width="50%">  <div align="center">';
  print "当前页:".$offset." 共".$pages."页";
  print '</div> </td>';
  print "</table>";

  //显示查询信息
  print '<table width="100%" border="1">';
  print '<tr class="text"> ';
  print '<td width="100%">  <div align="center">查询结果信息</div> </td>';
  print '</tr>';

  $query = "select lk_title,lk_link from temps order by lk_title desc LIMIT ".$curline.",20";
  $res = mysql_query($query, $dbh);  

  $li_num = 0;
  while ($row = mysql_fetch_array($res)) {  
     //采用隔行显示的方法显示信息内容
     if ($li_number == 0) {
        <tr bgcolor="#dedede">
    $li_number = 1;
     } else {
        <tr bgcolor="#ededed">
    $li_number = 0;
     }
     $tempstr = "<a href='".$row[lk_link]."'>".$row['lk_title']."</a>";
     print '<td width="100%" height="15" class="text"> '.$tempstr.'</td>';
     print '</tr>';
  }
  print "</table>";
?>
----------------------------
欢迎访问:zhangcg.oso.com.cn 

PHP 相关文章推荐
php中判断字符串是否全是中文或含有中文的实现代码
Sep 16 PHP
用PHP写的基于Memcache的Queue实现代码
Nov 27 PHP
PHP CLI模式下的多进程应用分析
Jun 03 PHP
php多个字符串替换成同一个的解决方法
Jun 18 PHP
深入解析Session是否必须依赖Cookie
Aug 02 PHP
PHP中使用CURL模拟登录并获取数据实例
Jul 01 PHP
PHP中imagick函数的中文解释
Jan 21 PHP
简单的php+mysql聊天室实现方法(附源码)
Jan 05 PHP
10个对初学者非常有用的PHP技巧
Apr 06 PHP
php版阿里大于(阿里大鱼)短信发送实例详解
Nov 30 PHP
PHP CURL与java http使用方法详解
Jan 26 PHP
PHP asXML()函数讲解
Feb 03 PHP
PHP脚本的10个技巧(5)
Oct 09 #PHP
打造计数器DIY三步曲(中)
Oct 09 #PHP
打造计数器DIY三步曲(下)
Oct 09 #PHP
打造计数器DIY三步曲(上)
Oct 09 #PHP
PHP脚本的10个技巧(4)
Oct 09 #PHP
聊天室php&amp;mysql(六)
Oct 09 #PHP
PHP脚本的10个技巧(3)
Oct 09 #PHP
You might like
总集篇&特番节目先行播出!《SAO Alicization War of Underworld》第2季度TV动画4月25日放送!
2020/03/06 日漫
PHP文件缓存内容保存格式实例分析
2014/08/20 PHP
php实现的发送带附件邮件类实例
2014/09/22 PHP
php + WebUploader实现图片批量上传功能
2019/05/06 PHP
PHP中将一个字符串部分字符用星号*替代隐藏的实现代码
2019/09/08 PHP
yii框架数据库关联查询操作示例
2019/10/14 PHP
Jquery 复选框取值兼容FF和IE8(测试有效)
2013/10/29 Javascript
JavaScript和jquery获取父级元素、子级元素、兄弟元素的方法
2016/06/05 Javascript
简单实现js间歇或无缝滚动效果
2016/06/29 Javascript
基于JavaScript实现鼠标向下滑动加载div的代码
2016/08/31 Javascript
基于JS实现仿百度百家主页的轮播图效果
2017/03/06 Javascript
详解JS取出两个数组中的不同或相同元素
2019/03/20 Javascript
深入了解JavaScript代码覆盖
2019/06/13 Javascript
jQuery实现checkbox全选、反选及删除等操作的方法详解
2019/08/02 jQuery
JavaScript Array.flat()函数用法解析
2020/09/02 Javascript
python复制与引用用法分析
2015/04/08 Python
python学习必备知识汇总
2017/09/08 Python
python 按照固定长度分割字符串的方法小结
2018/04/30 Python
使用 PyTorch 实现 MLP 并在 MNIST 数据集上验证方式
2020/01/08 Python
css3 矩阵的使用详解
2018/03/20 HTML / CSS
HTML5 离线应用之打造零请求、无流量网站的解决方法
2013/04/25 HTML / CSS
美国最好的保健品打折网店:Swanson
2017/08/04 全球购物
Laura Mercier官网:彩妆大师罗拉玛斯亚的化妆品牌
2018/01/04 全球购物
eBay澳大利亚站:eBay.com.au
2018/02/02 全球购物
校班主任推荐信范文
2013/12/03 职场文书
行政部岗位职责范本
2014/03/13 职场文书
安全生产管理责任书
2014/04/16 职场文书
法人授权委托书样本
2014/09/19 职场文书
党员自我剖析材料范文
2014/10/06 职场文书
2014年酒店年度工作总结
2014/12/10 职场文书
上课说话检讨书
2015/01/27 职场文书
云台山导游词
2015/02/03 职场文书
致地震灾区的慰问信
2015/03/23 职场文书
感恩节寄语2015
2015/03/24 职场文书
工作年限证明模板
2015/06/15 职场文书
贷款担保书范本
2015/09/22 职场文书