用PHP读取MyAQL表单中全部数据并将数据整理翻页

时间:2014-07-22 23:07:55   收藏:0   阅读:505

要注意的是我们的PHP是嵌入在html中的

mamicode.com,码迷
<html>
<head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
    <style type="text/css">
        
    </style>
</head>
<body>

</body>
    <script>
        
    </script>
</html>
mamicode.com,码迷

 

首先在php中写入链接

mamicode.com,码迷
 $conn = mysql_connect("localhost","root","") or die("链接数据库失败");
        mysql_select_db("fg19");// 选择数据库 fg19为数据库名
        mysql_query("set names ‘utf8‘"); // 中文编码
mamicode.com,码迷

可以将它另写在一个php文件中,然后通过 include()或者require()连接数据库文件

mamicode.com,码迷
 include("conn.php");
// conn.php 是连接的php文件名
mamicode.com,码迷
mamicode.com,码迷
require("conn.php");

// conn.php 是连接的php文件名
mamicode.com,码迷

 include()和require()的区别在于:  

接着我们要在mySQL数据库创建一个表单并插入数据,因为要进行翻页,所以尽量插入多条数据,然后在php中,通过以下代码读取表中所有数据,

mamicode.com,码迷

 <?php
      $conn = mysql_connect("localhost","root","") or die("链接数据库失败");
      mysql_select_db("fg19");
      mysql_query("set names ‘utf8‘");

 

      $sql = "select * from moves";

      $result = mysql_query($sql);

      while($row = mysql_fetch_array($result)){   //  把结果集转换成的数组赋给$rwo,如果有数据就是真,没有为假

?>

       <?=$row[‘id‘] ?>

       <?=$row[‘stuName‘] ?>   <!-- 这里两条是得到表中一行的数据  stuname为表单中一行数据的名称-->

<?php
}
?>

mamicode.com,码迷

为了打印出表中每一条数据我们必须用while循环输出,为了使打印出的表单美观,我们可以用table

mamicode.com,码迷

 <?php
      $conn = mysql_connect("localhost","root","") or die("链接数据库失败");
      mysql_select_db("fg19");
      mysql_query("set names ‘utf8‘");

 

     $sql = "select * from moves";

     $result = mysql_query($sql);

    while($row = mysql_fetch_array($result)){

?>
      <table  cellpadding="1" cellspacing="1">
            <tr style="background-color: #9ec4ff">
                <td>序号</td>
                <td>电影名称</td>
                <td>主演</td>
                <td>类型</td>
                <td>操作</td>
            </tr>
            <tr>
                <td><?php echo $row[‘id‘] ?></td>
                <td>
                    <a href="texta.php?id=<?php echo $row[‘id‘] ?>">
                        <?php echo $row[‘move_name‘] ?>
                    </a>
                </td>
                <td><?php echo $row[‘actor‘] ?></td>
                <td>
                    <?php
                    echo swiftType($row[‘type‘]);
                    ?>
                </td>
                <td><a href="">删除</a> </td>
            </tr>
            <br/>
      </table>
<?php } ?>
mamicode.com,码迷

并使其隔行换色,隔行换色可以用css或者css+js或者php都可以 这里我们采用js代码如下

mamicode.com,码迷
  <script>
        // 隔行换色
        function changeColor(){
            var trs = document.getElementsByTagName("tr");
            for(var i=0;i<trs.length;i++){
                if( i%2 == 0){
                    trs[i].style.background="#cad9ea";
                }
            }
        }
        window.onload=changeColor;
    </script>
mamicode.com,码迷

注意:为了不影响代码的执行,js一般写在html末。

接下来是数据的翻页,我们可以先做一个数据统计,统计一共有几条数据,然后在计算有几页,再来进行数据翻页。以下代码是一个计算

mamicode.com,码迷
        $page = "";
        if(@$_GET[‘page‘]){
            $page = $_GET[‘page‘];
        }else{
            $page = 1;
        }

        $pageSize = 5;// 显示几条数据
        $sum = ($page-1)*$pageSize; //从第几条数据开始,这里是一个计算

        $sql = "select * from moves limit $sum,$pageSize";// limit 从第几条数据开始  显示几条数据
        $result = mysql_query($sql) or die(mysql_error());
$sql1
= "select * from moves";// 得到表单中中所有数据 $result1 = mysql_query($sql1) or die(mysql_error()); $count = mysql_num_rows($result1);
mamicode.com,码迷

在html中加入代码

mamicode.com,码迷
   <span>共有<?php echo $count ?> 部电影</span>
    <span>共有<?php
            $totalPage = $count % $pageSize == 0 ? intval($count / $pageSize) :
                 intval($count / $pageSize) + 1;
            echo $totalPage;
            ?> 页</span>
    <a href="text.php?page=<?php echo $page-1 ?>">上一页</a>
        <?php
        for($i=1;$i<=$totalPage;$i++){
            ?>
            <a href="text.php?page=<?php echo $i ?>"><?php echo $i ?></a>
        <?php
        }
        ?>
    <a href="text.php?page=<?php if($page >= $totalPage){echo $totalPage;}else{echo $page+1;} ?>">下一页</a>
mamicode.com,码迷

以下是完成代码,但需要Mysql数据同步

mamicode.com,码迷
<html>
<head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
    <style type="text/css">
        tr td{
            width: 150px;
            height: 30px;

        }
        /*css3隔行换色*/
        /*tr:nth-child(odd){*/
            /*background: #cad9ea;*/
        /*}*/
    </style>

</head>
<body>
        <?php
        $conn = mysql_connect("localhost","root","") or die("链接数据库失败");
        mysql_select_db("fg19");
        mysql_query("set names ‘utf8‘");

        $page = "";
        if(@$_GET[‘page‘]){
            $page = $_GET[‘page‘];
        }else{
            $page = 1;
        }

        $pageSize = 5;// 显示几条数据
        $sum = ($page-1)*$pageSize; //从第几条数据开始,这里是一个计算

        $sql = "select * from moves limit $sum,$pageSize";//limit 从第几条数据开始  显示几条数据
        $result = mysql_query($sql) or die(mysql_error());
        $sql1 = "select * from moves";// 得到表单中所有数据
        $result1 = mysql_query($sql1) or die(mysql_error()); //
        $count = mysql_num_rows($result1);

        $n=0;
        function swiftType($type){
            $t = "";
            switch($type){
                case 1:
                    $t = "玄幻";
                    break;
                case 2:
                    $t =  "青春";
                    break;
                case 3:
                    $t =  "警匪";
                    break;
                case 4:
                    $t =  "喜剧";
                    break;
                case 5:
                    $t =  "恐怖";
                    break;
            }
            return $t;
        }

//      循环输出表单数据
        while($row = mysql_fetch_array($result)){
        ?>
        <table  cellpadding="1" cellspacing="1">
            <tr style="background-color: #9ec4ff">
                <td>序号</td>
                <td>电影名称</td>
                <td>主演</td>
                <td>类型</td>
                <td>操作</td>
            </tr>
            <tr>
                <td><?php echo $row[‘id‘] ?></td>
                <td>
                    <a href="texta.php?id=<?php echo $row[‘id‘] ?>">
                        <?php echo $row[‘move_name‘] ?>
                    </a>
                </td>
                <td><?php echo $row[‘actor‘] ?></td>
                <td>
                    <?php
                    echo swiftType($row[‘type‘]);
                    ?>
                </td>
                <td><a href="">删除</a> </td>
            </tr>
            <br/>
        </table>
        <?php
            $n++;
        }
        mysql_close($conn);
        ?>

<!--        数据统计和翻页 -->
    <span>共有<?php echo $count ?> 部电影</span>
    <span>共有<?php
            $totalPage = $count % $pageSize == 0 ? intval($count / $pageSize) :
                 intval($count / $pageSize) + 1;
            echo $totalPage;
            ?> 页</span>
    <a href="text.php?page=<?php echo $page-1 ?>">上一页</a>
        <?php
        for($i=1;$i<=$totalPage;$i++){
            ?>
            <a href="text.php?page=<?php echo $i ?>"><?php echo $i ?></a>
        <?php
        }
        ?>
    <a href="text.php?page=<?php if($page >= $totalPage){echo $totalPage;}else{echo $page+1;} ?>">下一页</a>
<br/>
</body>
    <script>
        // 隔行换色
        function changeColor(){
            var trs = document.getElementsByTagName("tr");
            for(var i=0;i<trs.length;i++){
                if( i%2 == 0){
                    trs[i].style.background="#cad9ea";
                }
            }
        }
        window.onload=changeColor;
    </script>

</html>
mamicode.com,码迷

以下是数据库数据信息,数据库为 fg19 ,表名为 moves

mamicode.com,码迷

插入的数据

mamicode.com,码迷

(以上数据信息乱入,请无视!)

 

用PHP读取MyAQL表单中全部数据并将数据整理翻页,码迷,mamicode.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!