当前位置:首页 > PHP教程 > php高级应用 > 列表

PHP实现从PostgreSQL数据库检索数据分页显示及根据条件查找数据示例

发布:smiling 来源: PHP粉丝网  添加日期:2021-09-25 15:46:43 浏览: 评论:0 

这篇文章主要介绍了PHP实现从PostgreSQL数据库检索数据分页显示及根据条件查找数据操作,涉及PHP操作PostgreSQL数据库的SQL条件查询、分页、显示等相关操作技巧,需要的朋友可以参考下。

本文实例讲述了PHP实现从PostgreSQL数据库检索数据分页显示及根据条件查找数据,分享给大家供大家参考,具体如下:

主要功能是从postgreSql查询数据,并检索,由于自己刚开始接触,所以难点在于多条数据同时筛选并分页显示出来,写下自己的代码与大家共享。

  1. <html> 
  2. <head> 
  3. <script type="text/javascript"> 
  4.   /** 
  5.  * 分页函数 
  6.  * pno--页数 
  7.  * psize--每页显示记录数 
  8.  * 分页部分是从真实数据行开始,因而存在加减某个常数,以确定真正的记录数 
  9.  * 纯js分页实质是数据行全部加载,通过是否显示属性完成分页功能 
  10.  **/ 
  11. function goPage(pno,psize){ 
  12.   var itable = document.getElementById("idData"); 
  13.   var num = itable.rows.length;//表格所有行数(所有记录数) 
  14.   console.log(num); 
  15.   var totalPage = 0;//总页数 
  16.   var pageSize = psize;//每页显示行数 
  17.   //总共分几页 
  18.   if(num/pageSize > parseInt(num/pageSize)){ 
  19.       totalPage=parseInt(num/pageSize)+1; 
  20.     }else{ 
  21.       totalPage=parseInt(num/pageSize); 
  22.     } 
  23.   var currentPage = pno;//当前页数 
  24.   var startRow = (currentPage - 1) * pageSize+1;//开始显示的行 31 
  25.     var endRow = currentPage * pageSize;//结束显示的行  40 
  26.     endRow = (endRow > num)? num : endRow;  40 
  27.     console.log(endRow); 
  28.     //遍历显示数据实现分页 
  29.   for(var i=1;i<(num+1);i++){ 
  30.     var irow = itable.rows[i-1]; 
  31.     if(i>=startRow && i<=endRow){ 
  32.       irow.style.display = "block"
  33.     }else{ 
  34.       irow.style.display = "none"
  35.     } 
  36.   } 
  37.   var pageEnd = document.getElementById("pageEnd"); 
  38.   var tempStr = "共"+num+"条记录 分"+totalPage+"页 当前第"+currentPage+"页"; 
  39.   if(currentPage>1){ 
  40.     tempStr += "<a href=\"#\" onClick=\"goPage("+(1)+","+psize+")\">首页</a>"; 
  41.     tempStr += "<a href=\"#\" onClick=\"goPage("+(currentPage-1)+","+psize+")\"><上一页</a>
  42.   }else{ 
  43.     tempStr += "首页"; 
  44.     tempStr += "<上一页"; 
  45.   } 
  46.   if(currentPage<totalPage){ 
  47.     tempStr += "<a href=\"#\" onClick=\"goPage("+(currentPage+1)+","+psize+")\">下一页></a>"; 
  48.     tempStr += "<a href=\"#\" onClick=\"goPage("+(totalPage)+","+psize+")\">尾页</a>"; 
  49.   }else{ 
  50.     tempStr += "下一页>"; 
  51.     tempStr += "尾页"; 
  52.   } 
  53.   document.getElementById("barcon").innerHTML = tempStr
  54. </script> 
  55.   <style type="text/css"> 
  56.     table 
  57.      { 
  58.      text-align:center; 
  59.      width:1000px; 
  60.      } 
  61.      th 
  62.      { 
  63.      width:100px; 
  64.      } 
  65.     input 
  66.      { 
  67.      width:100px; 
  68.      } 
  69.     td 
  70.      { 
  71.      width:100px; 
  72.      } 
  73.   </style> 
  74.   </head> 
  75.   <body onLoad="goPage(1,10);"> 
  76.     <form method="post" action="browes.php"> 
  77.       <table border="1"> 
  78.         <tr> 
  79.           <th><h2>个人概况一览</h2></th> 
  80.         </tr> 
  81.         <tr> 
  82.           <table border="1" > 
  83.             <tr> 
  84.               <td>姓:</td> 
  85.               <td><input type="text" name="surname">  </td> 
  86.               <td>名:</td> 
  87.               <td><input type="text" name="name">  </td> 
  88.               <td>手机:</td> 
  89.               <td><input type="text" name="phone">  </td> 
  90.               <td>性别:</td> 
  91.               <td><select name="sex" id="select_k1" class="xla_k"> 
  92.                   <option value=""> </option> 
  93.                   <option value="male"></option> 
  94.                   <option value="female"></option> 
  95.                 </select> 
  96.               </td> 
  97.               <td>学校:</td> 
  98.               <td><input type="text" name="school">  </td> 
  99.             </tr> 
  100.           </table> 
  101.         </tr> 
  102.         <tr> 
  103.           <td><input type="submit" name="submit" value="提交"> </td> 
  104.           <td><input name=reset type=reset value=重置></td> 
  105.         </tr> 
  106.       </table> 
  107.     </form> 
  108. </body> 
  109. <body> 
  110.     <table id="idData" border="1" > 
  111.      <tr> 
  112.       <th>照片</th> 
  113.       <th>姓名</th> 
  114.       <th>性别</th> 
  115.       <th>生日</th> 
  116.       <th>邮箱</th> 
  117.       <th>电话</th> 
  118.       <th>学校</th> 
  119.       <th>技能</th> 
  120.       <th>选项</th> 
  121.      </tr> 
  122.     <?php 
  123.       include "../head.php"; 
  124.       $s = $_POST["surname"]; 
  125.       $a = $_POST["name"]; 
  126.       $b = $_POST["phone"]; 
  127.       $c = $_POST["sex"]; 
  128.       $d = $_POST["school"]; 
  129. /* 
  130. 下面这段代码是PostgreSQL数据库多条数据检索编写数据库的通用方法 
  131. */ 
  132.       $field = "where 1 = 1 "
  133.         if($a){ 
  134.           //magic_quotes_gpc=on,addslashes not used. 
  135.           $name = str_replace('\'', "''", $a); 
  136.           $field."and (name like '%".$name."%') "; 
  137.         } 
  138.          if(($s)!=NULL){ 
  139.           $surname = str_replace('\'', "''", $s); 
  140.           $field."and (surname like '%".$surname."%') "; 
  141.         } 
  142.         if(($c)!=NULL){ 
  143.           $field."and (sex = '".$c."') "; 
  144.         } 
  145.         if(($d)!=NULL){ 
  146.           $school = str_replace('\'', "''", $d); 
  147.           $field."and (school like '%".$school."%') "; 
  148.         } 
  149.         if(($b)!=NULL){ 
  150.           $tel = str_replace('\'', "''", $b); 
  151.           $field."and (phone = '".$tel."') "; 
  152.         } 
  153.         $sql = "select * from worker ".$field; 
  154. /* 
  155. 上面这段代码是PostgreSQL数据库多条数据检索编写数据库的通用方法 
  156. */ 
  157.       $ret = pg_query($db, $sql); 
  158.     while($row=pg_fetch_row($ret)){ 
  159.     ?> 
  160.      <tr> 
  161.       <td><?php echo $row[9];?></td> 
  162.       <td><?php echo $row[1].$row[2];?></td> 
  163.       <td><?php echo $row[3];?></td> 
  164.       <td><?php echo $row[4];?></td> 
  165.       <td><?php echo $row[5];?></td> 
  166.       <td><?php echo $row[6];?></td> 
  167.       <td><?php echo $row[7];?></td> 
  168.       <td><?php echo $row[8];?></td> 
  169.       <td><button><a href = "<?php echo 'change.php?id='.$row[0] ?>">change</button> 
  170.         <button><a href = "<?php echo 'delete.php?id='.$row[0] ?>">delete</button></td> 
  171.      </tr> 
  172.     <?php } ?> 
  173.     </table> 
  174.     <table > 
  175.     <div id="barcon" name="barcon"></div> 
  176.     </table> 
  177.   </body> 
  178. </html>

Tags: PostgreSQL PHP检索数据

分享到: