PDO案例:学生信息管理系统

来源:互联网 发布:单片机编程培训 编辑:程序博客网 时间:2024/05/16 05:14

PDO实现学生信息的增删改查

主页:index.php

<!DOCTYPE html><html><head>    <meta charset="UTF-8">    <title>学生信息管理</title>    <link type="text/css" rel="stylesheet" href="css/style.css"/></head><body><div class="content">    <?php require_once('menu.htm')?>    <h3>浏览学生信息</h3>    <table>        <tr><th>id</th><th>班级</th><th>姓名</th><th>年龄</th><th>操作</th></tr>        <?php            //1.连接数据库            try{                $pdo=new PDO("mysql:host=localhost;dbname=myapp","root","");            }catch(PDOException $e){                die("数据库连接失败".$e->getMessage());            }            //2.执行SQL查询,并解析与遍历            $sql="SELECT * FROM stu";            foreach($pdo->query($sql) as $row){                $id=$row['id'];                $classId=$row['classId'];                $name=$row['name'];                $age=$row['age'];                echo "<tr>                        <td>$id</td>                        <td>$classId</td>                        <td>$name</td>                        <td>$age</td>                        <td>                            <a href='javascript:doDel($id)'>删除</a>                            <a href='edit.php?id=$id'>修改</a>                        </td>                      </tr>";            }        ?>    </table></div><script>    function doDel(id){        if(confirm('确定要删除吗?')){            window.location='action.php?action=del&id='+id;        }    }</script></body></html>
共用菜单块:menu.htm

<h2>学生信息管理</h2><a href="index.php">浏览学生</a><a href="add.php">增加学生</a><hr/>
css文件:style.css

.content{    width: 600px;    margin: 0 auto;}table{    border-collapse: collapse;    width: 600px;}th,td{    border:1px solid #ccccff;    padding: 5px;}td{    text-align: center;}
显示效果:

增加学生信息的界面:add.php
<!DOCTYPE html><html><head>    <meta charset="UTF-8">    <title>学生信息管理</title>    <link type="text/css" rel="stylesheet" href="css/style.css"/></head><body><div class="content">    <?php require_once('menu.htm')?>    <h3>增加学生信息</h3>    <form action="action.php?action=add" method="post">        <table>            <tr>                <td>班级</td>                <td><input type="text" name="classId"/></td>            </tr>            <tr>                <td>姓名</td>                <td><input type="text" name="name"/></td>            </tr>            <tr>                <td>年龄</td>                <td><input type="text" name="age"/></td>            </tr>            <tr>                <td></td>                <td>                    <input type="submit" value="增加"/>                    <input type="reset" value="重置"/>                </td>            </tr>        </table>    </form></div></body></html>
显示效果:
修改学生信息的界面:edit.php
<!DOCTYPE html><html><head>    <meta charset="UTF-8">    <title>学生信息管理</title>    <link type="text/css" rel="stylesheet" href="css/style.css"/></head><body><div class="content">    <?php require_once('menu.htm');        //1.连接数据库        try{            $pdo=new PDO("mysql:host=localhost;dbname=myapp","root","");        }catch(PDOException $e){            die("数据库连接失败".$e->getMessage());        }        //2.执行SQL语句,获取要修改的信息        $sql="SELECT * FROM stu WHERE id=".$_GET['id'];        $stmt=$pdo->query($sql);        if($stmt->rowCount()>0){            $stu=$stmt->fetch(PDO::FETCH_ASSOC);//解析数据        }else{            die("没有要修改的数据");        }    ?>    <h3>修改学生信息</h3>    <form action="action.php?action=edit" method="post">        <input type="hidden" name="id" value="<?php echo $stu['id']; ?>">        <table>            <tr>                <td>班级</td>                <td><input type="text" name="classId" value="<?php echo $stu['classId']; ?>"/></td>            </tr>            <tr>                <td>姓名</td>                <td><input type="text" name="name" value="<?php echo $stu['name']; ?>"/></td>            </tr>            <tr>                <td>年龄</td>                <td><input type="text" name="age" value="<?php echo $stu['age']; ?>"/></td>            </tr>            <tr>                <td></td>                <td>                    <input type="submit" value="修改"/>                    <input type="reset" value="重置"/>                </td>            </tr>        </table>    </form></div></body></html>
显示效果:
处理增删改操作的文件:action.php
<?php//1.连接数据库try{    $pdo=new PDO("mysql:host=localhost;dbname=myapp","root","");}catch(PDOException $e){    die("fail to connect mysql".$e->getMessage());}$id=$_POST['id'];$classId=$_POST['classId'];$name=$_POST['name'];$age=$_POST['age'];//2.通过action的值做相应操作switch($_GET['action']){    case "add"://增加操作        $sql="INSERT INTO stu VALUES (null,'{$classId}','{$name}','{$age}')";        $rw=$pdo->exec($sql);        if($rw>0){            echo "<script>alert('add success');window.location='index.php';</script>";        }else{            echo "<script>alert('add fail');window.history.back();</script>";        }    break;    case "del"://删除操作        $id=$_GET['id'];        $sql="DELETE FROM stu WHERE id={$id}";        $pdo->exec($sql);        header("Location:index.php");        break;    case "edit"://修改操作        $sql="UPDATE stu set name='{$name}',classId={$classId},age={$age} WHERE id={$id}";        $rw=$pdo->exec($sql);        if($rw>0){            echo "<script>alert('update success');window.location='index.php';</script>";        }else{            echo "<script>alert('update fail');window.history.back();</script>";        }}

0 0
原创粉丝点击