600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > PHP+MySQL 实现数据库增删改查 学生信息管理系统

PHP+MySQL 实现数据库增删改查 学生信息管理系统

时间:2018-11-26 13:31:34

相关推荐

PHP+MySQL 实现数据库增删改查 学生信息管理系统

PHP+MySQL实现数据库增删改查

通过学生信息管理系统,熟悉PHP+MySQL增删改查,本文介绍了学生信息管理系统。

此项目运行环境:Apache2.4.41 PHP7.3.8

查看演示

地址一:/

备用地址:http://39.105.0.128/PHP/php_mysql_student/

项目地址

/s/1OQDBoRqOBMH7gBdUF_lcBQ

MySQL数据库创建

建库语句

# 创建数据库

CREATE DATABASE `studb`;

# 使用数据库

USE `studb`;

#创建数据表

CREATE TABLE `student` (

`id` int(10) NOT NULL AUTO_INCREMENT,

`name` varchar(32) DEFAULT NULL COMMENT '姓名',

`sex` char(2) DEFAULT NULL COMMENT '性别',

`age` varchar(6) DEFAULT NULL COMMENT '年龄',

`edu` varchar(12) DEFAULT NULL COMMENT '学历',

`salary` decimal(10,2) DEFAULT NULL COMMENT '工资',

`bonus` decimal(10,2) DEFAULT NULL COMMENT '奖金',

`city` varchar(32) DEFAULT NULL COMMENT '籍贯',

PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

#插入测试数据

INSERT INTO `student` VALUES ('1', '测试1', '男', '22', '大专', '4500.00', '1000.00', '广东韶关');

INSERT INTO `student` VALUES ('2', '测试2', '女', '20', '本科', '5000.00', '500.00', '湖南长沙');

INSERT INTO `student` VALUES ('3', '前端1', '女', '22', '大专', '5000.00', '700.00', '湖南郴州');

INSERT INTO `student` VALUES ('4', '前端2', '女', '25', '本科', '8000.00', '200.00', '湖南娄底');

INSERT INTO `student` VALUES ('5', '后台', '男', '22', '专科', '7000.00', '200.00', '湖南郴州');

创建一个学生列表的数据库:

1.查询数据库

1.1.创建文件conn.php,保存常量

<?php

// 连接数据库、设置字符集

$link = mysqli_connect('localhost', 'root', 'root', 'studb');

mysqli_set_charset($link, 'utf8');

?>

1.2.创建入口文件index.html(连接数据库、查询数据)

<?php

//连接数据库

include 'conn.php';

//编写查询sql语句

$sql = 'SELECT * FROM `student`';

//执行查询操作、处理结果集

$result = mysqli_query($link, $sql);

if (!$result) {

exit('查询sql语句执行失败。错误信息:'.mysqli_error($link)); // 获取错误信息

}

$data = mysqli_fetch_all($result, MYSQLI_ASSOC);

//编写查询数量sql语句

$sql = 'SELECT COUNT(*) FROM `student`';

//执行查询操作、处理结果集

$n = mysqli_query($link, $sql);

if (!$n) {

exit('查询数量sql语句执行失败。错误信息:'.mysqli_error($link)); // 获取错误信息

}

$num = mysqli_fetch_assoc($n);

//将一维数组的值转换为一个字符串

$num = implode($num);

?>

<html>

<head>

<meta charset="UTF-8">

<title>学生信息管理系统</title>

</head>

<style type="text/css">

.wrapper {width: 1000px;margin: 20px auto;}

h1 {text-align: center;}

.add {margin-bottom: 20px;}

.add a {text-decoration: none;color: #fff;background-color: #00CCFF;padding: 6px;border-radius: 5px;}

td {text-align: center;}

</style>

<body background="student.jpg">

<div class="wrapper">

<h1>学生信息管理系统</h1>

<div class="add">

<a href="addStudent.html">添加学生</a>&nbsp;&nbsp;&nbsp;共<?php echo $num; ?>个学生

</div>

<table width="960" border="1">

<tr>

<th>编号</th>

<th>姓名</th>

<th>性别</th>

<th>年龄</th>

<th>学历</th>

<th>工资</th>

<th>奖金</th>

<th>籍贯</th>

<th>操作</th>

</tr>

<?php

foreach ($data as $key => $value) {

foreach ($value as $k => $v) {

$arr[$k] = $v;

}

echo "<tr>";

echo "<td>{$arr['id']}</td>";

echo "<td>{$arr['name']}</td>";

echo "<td>{$arr['sex']}</td>";

echo "<td>{$arr['age']}</td>";

echo "<td>{$arr['edu']}</td>";

echo "<td>{$arr['salary']}</td>";

echo "<td>{$arr['bonus']}</td>";

echo "<td>{$arr['city']}</td>";

echo "<td>

<a href='javascript:del({$arr['id']})'>删除</a>

<a href='editStudent.php?id={$arr['id']}'>修改</a>

</td>";

echo "</tr>";

// echo "<pre>";

// print_r($arr);

// echo "</pre>";

}

// 关闭连接

mysqli_close($link);

?>

</table>

</div>

<script type="text/javascript">

function del (id) {

if (confirm("确定删除这个学生吗?")){

window.location = "action_del.php?id="+id;

}

}

</script>

</body>

</html>

1.2.创建图片student.jpg(网页背景图)

页面如图:

2.添加学生

2.1创建文件addStudent.htmt

<!doctype html>

<html>

<head>

<meta charset="UTF-8">

<title>学生信息管理系统</title>

<style type="text/css">

.box {display:table;margin:0 auto;}

h2 {text-align: center;}

.add {margin-bottom: 20px;}

</style>

</head>

<body background="student.jpg">

<!--输出定制表单-->

<div class="box">

<h2>添加学生</h2>

<div class="add">

<form action="action_addStudent.php" method="post" enctype="multipart/form-data">

<table border="1">

<tr><th>姓名:</th><td><input type="text" name="name" size="25" value=""></td></tr>

<tr><th>性别:</th><td>

<label><input checked type="radio" name="sex" value="男">男</label>

<label><input type="radio" name="sex" value="女">女</label>

</td></tr>

<tr><th>年龄:</th><td><input type="text" name="age" size="25" value=""></td></tr>

<tr><th>学历:</th><td>

<select name="edu" >

<option selected value="">--请选择--</option>

<option value="研究生">研究生</option>

<option value="本科">本科</option>

<option value="专科">专科</option>

<option value="高中">高中</option>

<option value="初中">初中</option>

</select>

</td></tr>

<tr><th>工资:</th><td><input type="text" name="salary" size="25" value=""></td></tr>

<tr><th>奖金:</th><td><input type="text" name="bonus" size="25" value=""></td></tr>

<tr><th>籍贯:</th><td><input type="text" name="city" size="25" value=""></td></tr>

<tr><th></th><td>

<input type="button" onClick="javascript :history.back(-1);" value="返回" >&nbsp;&nbsp;&nbsp;

<input type="reset" value="重置">&nbsp;&nbsp;&nbsp;

<input type="submit" value="提交">&nbsp;&nbsp;&nbsp;

</td></tr>

</table>

</form>

</div>

</div>

</body>

</html>

页面如图:

如果直接提交,不提交任何数据:

3秒后跳回首页:

2.2创建处理增加新闻的服务端文件action_addStudent.php

<?php

//连接数据库

include 'conn.php';

// 获取增加的学生信息

$name = $_POST['name'];

$sex = $_POST['sex'];

$age = $_POST['age'];

$edu = $_POST['edu'];

$salary = $_POST['salary'];

$bonus = $_POST['bonus'];

$city = $_POST['city'];

//编写预处理sql语句

$sql = "INSERT INTO `student` VALUES(NULL, ?, ?, ?, ?, ?, ?, ?)";

//预处理SQL模板

$stmt = mysqli_prepare($link, $sql);

// 参数绑定,并为已经绑定的变量赋值

mysqli_stmt_bind_param($stmt, 'sssssss', $name, $sex, $age, $edu, $salary, $bonus, $city);

if ($name) {

// 执行预处理(第1次执行)

$result = mysqli_stmt_execute($stmt);

//关闭连接

mysqli_close($link);

if ($result) {

//添加学生成功

//跳转到首页

header("Location:index.php");

}else{

exit('添加学生sql语句执行失败。错误信息:' . mysqli_error($link));

}

}else{

//添加学生失败

//输出提示,跳转到首页

echo "添加学生失败!<br><br>";

header('Refresh: 3; url=index.php'); //3s后跳转

}

3.删除学生信息

点击删除按钮,通过服务端文件action_del.php进行删除处理

<?php

//连接数据库

include 'conn.php';

$id = $_GET['id'];

//删除指定数据

//编写删除sql语句

$sql = "DELETE FROM student WHERE id={$id}";

//执行查询操作、处理结果集

$result = mysqli_query($link, $sql);

if (!$result) {

exit('查询数据sql语句执行失败。错误信息:'.mysqli_error($link)); // 获取错误信息

}

// 删除完跳转到首页

header("Location:index.php");

页面如图:

js弹出提示信息:

4.修改学生信息

4.1点击修改按钮,跳转到文件editStudent.php进行修改处理

<?php

//连接数据库

include 'conn.php';

//获取id

$id = $_GET['id'];

//编写查询sql语句

$sql = "SELECT * FROM `student` WHERE `id`=$id";

//执行查询操作、处理结果集

$result = mysqli_query($link, $sql);

if (!$result) {

exit('查询sql语句执行失败。错误信息:'.mysqli_error($link)); // 获取错误信息

}

$data = mysqli_fetch_all($result, MYSQLI_ASSOC);

//将二维数数组转化为一维数组

foreach ($data as $key => $value) {

foreach ($value as $k => $v) {

$arr[$k]=$v;

}

}

// echo "<pre>";

// var_dump($arr);

// echo "</pre>";

?>

<html>

<head>

<meta charset="UTF-8">

<title>学生信息管理系统</title>

<style type="text/css">

.box {display:table;margin:0 auto;}

h2 {text-align: center;}

.add {margin-bottom: 20px;}

</style>

</head>

<body background="student.jpg">

<!--输出定制表单-->

<div class="box">

<h2>修改学生信息</h2>

<div class="add">

<form action="action_editStudent.php" method="post" enctype="multipart/form-data">

<table border="1">

<tr><th>编号:</th><td><input type="text" name="id" size="5" value="<?php echo $arr["id"] ?>" readonly="readonly"></td></tr>

<tr><th>姓名:</th><td><input type="text" name="name" size="25" value="<?php echo $arr["name"] ?>"></td></tr>

<tr><th>性别:</th><td>

<label><input <?php if ($arr["sex"] == "男") {

echo "checked";

} ?> type="radio" name="sex" value="男">男</label>

<label><input <?php if ($arr["sex"] == "女") {

echo "checked";

} ?> type="radio" name="sex" value="女">女</label>

</td></tr>

<tr><th>年龄:</th><td><input type="text" name="age" size="25" value="<?php echo $arr["age"] ?>"></td></tr>

<tr><th>学历:</th><td>

<select name="edu" >

<option <?php if (!$arr["edu"]) {

echo "selected";

} ?> value="">--请选择--</option>

<option <?php if ($arr["edu"] == "研究生") {

echo "selected";

} ?> value="研究生">研究生</option>

<option <?php if ($arr["edu"] == "本科") {

echo "selected";

} ?> value="本科">本科</option>

<option <?php if (!$arr["edu"] == "专科") {

echo "selected";

} ?> value="专科">专科</option>

<option <?php if (!$arr["edu"] == "高中") {

echo "selected";

} ?> value="高中">高中</option>

<option <?php if (!$arr["edu"] == "初中") {

echo "selected";

} ?> value="初中">初中</option>

</select>

</td></tr>

<tr><th>工资:</th><td><input type="text" name="salary" size="25" value="<?php echo $arr["salary"] ?>"></td></tr>

<tr><th>奖金:</th><td><input type="text" name="bonus" size="25" value="<?php echo $arr["bonus"] ?>"></td></tr>

<tr><th>籍贯:</th><td><input type="text" name="city" size="25" value="<?php echo $arr["city"] ?>"></td></tr>

<tr><th></th><td>

<input type="button" onClick="javascript :history.back(-1);" value="返回" >&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input type="submit" value="提交">

</td></tr>

</table>

</form>

</div>

</div>

</body>

</html>

页面如下:

4.2通过服务端文件action_editStudent.php进行修改处理

<?php

//连接数据库

include 'conn.php';

// 获取修改后的学生信息

$id = $_POST['id'];

$name = $_POST['name'];

$sex = $_POST['sex'];

$age = $_POST['age'];

$edu = $_POST['edu'];

$salary = $_POST['salary'];

$bonus = $_POST['bonus'];

$city = $_POST['city'];

//编写预处理sql语句

$sql = "UPDATE `student`

SET

`name`= ?,

`sex`= ?,

`age`= ?,

`edu`= ?,

`salary`= ?,

`bonus`= ?,

`city`= ?

WHERE `id`= ?";

//预处理SQL模板

$stmt = mysqli_prepare($link, $sql);

// 参数绑定,并为已经绑定的变量赋值

mysqli_stmt_bind_param($stmt, 'ssssssss', $name, $sex, $age, $edu, $salary, $bonus, $city, $id);

if ($name) {

// 执行预处理(第1次执行)

$result = mysqli_stmt_execute($stmt);

//关闭连接

mysqli_close($link);

if ($result) {

//修改学生成功

//跳转到首页

header("Location:index.php");

}else{

exit('修改学生信息sql语句执行失败。错误信息:' . mysqli_error($link));

}

}else{

//修改学生失败

//输出提示,跳转到首页

echo "修改学生失败!<br><br>";

header('Refresh: 3; url=index.php'); //3s后跳转

}

如果将修改的姓名改为空,提交:

输出失败提示:

3秒后跳回首页:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。