zoukankan      html  css  js  c++  java
  • PHP MySQL数据分页

    SQL SELECT语句查询总是可能导致数千条记录。但是在一个页面上显示所有结果并不是一个好主意。因此,我们可以根据要求将此结果划分为多个页面。分页意味着在多个页面中显示您的查询结果,而不是仅将它们全部放在一个长页面中。MySQL通过使用LIMIT子句帮助生成分页,该子句将采用两个参数。第一个参数为OFFSET,第二个参数应从数据库返回多少条记录。下面是一个使用LIMIT子句获取记录以生成分页的简单示例。

    <html>
    <head>
            <title>PHP分页</title>
    </head>
    <body>
    <?php
             $dbhost = 'localhost';  // 数据库主机
             $dbuser = 'root';            // 用户名
             $dbpass = '123456';    // 密码
             $rec_limit = 10;            // 每页10条数据
             $conn = mysqli_connect($dbhost, $dbuser, $dbpass);
             if(! $conn ) {
                die('连接失败: ' . mysqli_error());
             }
             mysqli_select_db($conn,'test');   // 要操作的数据
             /* 获取所有的记录数 */
             $sql = "SELECT COUNT(id) FROM test ";
             $retval = mysqli_query( $conn, $sql );
             if(! $retval ) {
                die('没有获取到数据: ' . mysqli_error($conn));
             }
             $row = mysqli_fetch_array($retval, MYSQLI_NUM );
             $rec_count = $row[0];
             if( isset($_GET['page'] ) ) {
                $page = $_GET['page'] + 1;
                $offset = $rec_limit * $page ;
             }else {
                $page = 0;
                $offset = 0;
             }
             $left_rec = $rec_count - ($page * $rec_limit);
             $sql = "SELECT name ".
                "FROM test ".
                "LIMIT $offset, $rec_limit";
             $retval = mysqli_query( $conn, $sql );
             if(! $retval ) {
                die('不能获取到数据: ' . mysqli_error($conn));
             }
             while($row = mysqli_fetch_array($retval, MYSQLI_ASSOC)) {
                echo "TEST name :{$row['name']}  <br> ";
             }
             if( $page > 0 ) {
                $last = $page - 2;
                echo "<a href = "".$_SERVER['PHP_SELF']."?page=$last">上一页</a> |";
                echo "<a href = "".$_SERVER['PHP_SELF']."?page=$page">下一页</a>";
             }else if( $page == 0 ) {
                echo "<a href = "".$_SERVER['PHP_SELF']."?page=$page">下一页</a>";
             }else if( $left_rec < $rec_limit ) {
                $last = $page - 2;
                echo "<a href =  "".$_SERVER['PHP_SELF']."?page=$last">最后一页</a>";
             }
             mysqli_close($conn);
          ?>
    </body>
    </html>

    修改每页显示的数据或者插入多条数据查看效果,PHP MySQL插入数据

  • 相关阅读:
    CentOS6.4安装OpenSSL
    Linux下设置Tomcat开机启动
    Linux下Tomcat8.0.44配置使用Apr
    CentOS6.4将MySQL5.1升级至5.5.36
    Linux下实现MySQL数据库自动备份
    Linux将MySQL数据库目录挂载至新数据盘
    MySQL创建数据库与创建用户以及授权
    Node.js Mongoose数据库连接失败 提示:Authentication failed
    JBoss7.1.1远程无法访问
    mongodb3.4 远程连接认证失败
  • 原文地址:https://www.cnblogs.com/jc2182/p/11577302.html
Copyright © 2011-2022 走看看