Blogger Information
Blog 18
fans 0
comment 0
visits 14043
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
第4期学习班-2.22作业-【PDO制作学生管理系统-简单版】
八七乱乱
Original
1248 people have browsed it

对数据库操作一无所知,直播课中讲到的PDO,一直没有听懂,就在PHP中文网上找了一套PDO小型项目的视频学习,这次用双休的时间照视频制作了一套非常简陋的学生管理系统。

 

一、数据库准备

1、下载adminer.php,用于操作数据库,phpmyadmin太复杂了。

2、用adminer.php连接数据库,创建一个新的数据库【myphp】,编码为:utf8_general_ci

3、在myphp数据库创建一个数据表class,引擎为myaISAM

4、创建以下字段

 360截图20190228003103413.jpg

5、点击【新建数据】,然后新增2条同学的信息,如下图

360截图20190228003445737.jpg

6、数据库的创建就基本完成。

二、使用PDO连接据库

1、在phpstudy中创建一个站点

2、在站1点中创建index.php文件,作为主页

3、创建conn.php文档,用于连接数据库

<?php
try {
    $dns = 'mysql:host=127.0.0.1;dbname=myphp';
    $pdo = new PDO($dns, 'root', 'root');
} catch (PDOException $a) {
    die('数据库连接失败' . $a->getMessage());
}
print_r($pdo);
echo '数据库连接成功';
//如果连接成功,最后两段代码可以删除或是注释掉。

4、在index.php中引入conn.php文件

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>学生管理系统</title>
    <?php
 include('conn.php');
 ?>
</head>
<body>
</body>
</html>

 5、在浏览器中动态测试index.php页面,能否连接成功,在页面中都会显示相应的信息。

三、首页布局

1、创建menu.php文档,制作菜单页

<a href="index.php">浏览学生</a>
&nbsp;&nbsp;&nbsp;&nbsp;
<a href="add.php">增加学生</a>
<hr>

2、在index.php中引入menu.php,并制作一个表格

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>学生管理系统</title>
    <?php
 include('conn.php');
 ?>
</head>
<body>
<center>
    <h1>学生管理系统</h1>
    <?php
 include('menu.php');
 ?>
 <table width="650" border="1">
        <tr align="center">
            <td>ID</td>
            <td>姓名</td>
            <td>性别</td>
            <td>年龄</td>
            <td>班级</td>
            <td>***</td>
            <td>操作</td>
        </tr>
    </table>
</center>
</body>
</html>

360截图20190228010349477.jpg

3、再开始使用PHP进行数据库的内容读取了。

四、遍历数据库内容

 1、在index.php页面,插入以下代码

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>学生管理系统</title>
 <?php
    include('conn.php');
 ?>
</head>
<body>
<center>
    <h1>学生管理系统</h1>
 <?php
    include('menu.php');
 ?>
 <table width="650" border="1">
        <tr align="center">
            <td>ID</td>
            <td>姓名</td>
            <td>性别</td>
            <td>年龄</td>
            <td>班级</td>
            <td>***</td>
            <td>操作</td>
        </tr>
 
<?php
 $sql = 'SELECT * FROM `myclass`';
 foreach ($pdo->query($sql) as $e):
 ?>
 <tr align="center">
                <td><?php echo $e['id']; ?></td>
                <td><?php echo $e['name']; ?></td>
                <td><?php echo $e['sex'] ? '男' : '女'; ?></td>
                <td><?php echo $e['age']; ?></td>
                <td><?php echo $e['class']; ?></td>
                <td><?php echo $e['mobile']; ?></td>
                <td>
                    <button>修改</button>
                    <button>删除</button>
                </td>
            </tr>
 <?php
        endforeach;
 $pdo = null;
 ?>
 </table>
</center>
</body>
</html>

 360截图20190301001953921.jpg

2、此时浏览页面,可以看到数据库中的数据已调用出来了。

五、增加学生数据

1、创建add.php文档,插入以下代码:

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>学生管理系统</title>
 <?php
    include('conn.php');
 ?>
</head>
<body>
<center>
    <h1>学生管理系统</h1>
 <?php
    include('menu.php');
 ?>
    
</center>
</body>
</html>

2、再插入表单标签

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>学生管理系统</title>
 <?php
    include('conn.php');
 ?>
</head>
<body>
<center>
    <h1>学生管理系统</h1>
 <?php
    include('menu.php');
 ?>
 <h2>增加学生信息</h2>
    <form action="action.php?action=add" method="post">
        <table>
            <tr>
                <td>姓名:</td>
                <td><input type="text" name="name"></td>
            </tr>
            <tr>
                <td>性别:</td>
                <td>
                    <input type="radio" name="sex" value="1"> 男
 <input type="radio" name="sex" value="0"> 女
 </td>
            </tr>
            <tr>
                <td>年龄:</td>
                <td><input type="text" name="age"></td>
            </tr>
            <tr>
                <td>班级:</td>
                <td><input type="text" name="class"></td>
            </tr>
            <tr>
                <td>电话:</td>
                <td><input type="text" name="mobile"></td>
            </tr>
            <tr align="center">
                <td colspan="2">
                    <input type="submit" value="提交">
                    <input type="reset" value="重置">
                </td>
            </tr>
        </table>
    </form>
</center>
</body>
</html>

 360截图20190301003954739.jpg

3、表单是提交到action.php文档中进行处理的,我们再创建一个action.php文件。

4、在add.php文档的表单中,提交到action.php文档时,还传递了一个参数action=add,我们就可以利用传递的参数来对数据进行处理。

6、增加学生信息的PHP代码

1、在action.php中输入以下代码

<?php
include('conn.php');
//连接数据库
switch ($_GET['action']) {
    //判断传递的参数
    case 'add':
        //如果传递的参数是add,则执行下列语句
        $name = $_POST['name'];
        $sex = $_POST['sex'];
        $age = $_POST['age'];
        $class = $_POST['class'];
        $mobile = $_POST['$mobile'];
        //表单是post提交,将提交上来的数据存放到变量中
        $sql = "INSERT INTO `myclass` (`name`, `sex`, `age`, `class`, `mobile`)
VALUES ('{$name}', '{$sex}', '{$age}', '{$class}', '{$mobile}')";
        //SQL的写入数据语句
        $smt = $pdo->exec($sql);
        //PDO对象执行一次sql语句
        if ($smt > 0) {
            //如果PDO对象中的数据有变化,则弹出窗口,并跳转到index.php页面,否则就返回到提交页。
            echo "<script>alert('数据添加成功');window.location='index.php';</script>";
        } else {
            echo "<script>alert('数据添加失败');window.history.back();</script>";
        }
        break;

2、在主页进行【增加学生】的操作,如果成功,则会跳到主页,显示最新的学生名单。
360截图20190302005302095.jpg
}





Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments