PHP列表页面数据分页详解附源码

完全php面向过程 数据分页 无JS

<?php           
                //登陆页面设置的session,当session中存在name时
                //session_start();
    //$name = $_SESSION['name'];
    //if (empty($name)){
    //  header("Location: error.php");
    //  exit();
    //}

    //面向过程, 数据分页显示
    if(false!=($mysql = mysql_connect('本地mysql', 'mysql用户名', 'mysql密码'))){
      mysql_query('set names utf8',$mysql);    //设置数据库中的编码
      mysql_select_db("数据库database",$mysql);
    }else{
      die("连接失败");
    }
    
    
    $pageSize = 10;    //页面显示条数
    $rowCount = 0;  //数据总条数,从数据库获得
    
    $sqlCount = 'select count(id) from employee';
    $res1 = mysql_query($sqlCount,$mysql);
    
    //取出数据条数
    if(false!=($row=mysql_fetch_row($res1))){
      $rowCount = $row[0];
    }
    
    //总页数,通过计算得到
    $pageCount = 0;
    $pageCount = ceil($rowCount/$pageSize);
    
    //获取当前页
    if(!isset($_GET['pageNow'])){      // 当 get/post都为空的时候赋默认值1
      $pageNow = 1;  //当前页数
    }elseif(false!=is_numeric($_GET['pageNow']) && $_GET['pageNow']<=$pageCount){
      $pageNow = $_GET['pageNow'];
    }else{
      header("Location: ../Error/error.php");
                        exit();
    }

            //打印分页数据
      echo "<div  style='margin-left:300px;margin-top:1px;'>";
      echo "<table style='border:1px;border-style:solid;border-width:1px;border-color:green'>";
      echo "<tr><th>id</th>&nbsp;<th>name</th>&nbsp;<th>age</th>&nbsp;<th>sex</th>&nbsp;<th>birthday</th>&nbsp;<th>编辑雇员</th>&nbsp;<th>删除雇员</th>&nbsp;</tr>";
      $sqList = "select id,name,age,sex,birthday from employee limit ".($pageNow-1)*$pageSize.",".$pageSize;
      $res2 = mysql_query($sqList,$mysql);
      while (false!=($row=mysql_fetch_assoc($res2))){
        echo "<tr><td>{$row['id']}</td>&nbsp;<td>{$row['name']}</td>&nbsp;<td>{$row['age']}</td>&nbsp;<td>{$row['sex']}</td>&nbsp;<td>{$row['birthday']}</td>&nbsp;<td><a href=#>编辑</a></td>&nbsp;<td><a href=#>删除</a></td></tr>";
      }
      echo "</table>";

                        //表单控制显示页数
      echo "<form action='当前页'>";
      //上一页按钮
      if($pageNow>1){      
        $pageUp = $pageNow-1;
        echo "<a href='?pageNow=".$pageUp."'>上一页</a>&nbsp;";
      }
      
      //下一页按钮
      if($pageNow<$pageCount){
        $pageDown = $pageNow+1;
        echo "<a href='?pageNow=".$pageDown."'>下一页</a>&nbsp;<br/>";
      }
      
      //后退十页按钮
      if($pageNow-10>0){
        echo "<a href='?pageNow=".($pageNow-10)."'>&lt;&lt;&lt;</a>&nbsp;";
      }
      
        
      //向本页传递当前显示的页数,并显示第几页按钮
      for($i=1;$i<=$pageCount;$i++){
          
          if($i>$pageNow-2 && $i<$pageNow+6){
            if($i!=$pageNow){
              echo "<a href='?pageNow=".$i."'>第".$i."页</a>&nbsp;";
            }
          }
      }
        
      //前进十页
      if($pageNow+10<=$pageCount){
        echo "<a href='?pageNow=".($pageNow+10)."'>&gt;&gt;&gt;</a>&nbsp;";
      }
      
      //显示当前页与总页数
      echo "<br/>当前页".$pageNow."页/共".$pageCount."页";      
      
      
      //跳转页
      echo "跳转到:<input type='text' name='pageNow' id='pageNow' style='width:30px;height:20px'/>页<input type='submit' style='width:37px;height:20px;font-size:11px;' value='go'/>";
      echo "</form>";
      echo "</div>";
    
    
?>


相关文章

此处评论已关闭