php增删改查小练习

前言

在学完一系列的php基础后,如何快速巩固知识点呢?当然是通过大量的练习来更好地熟悉php语法。这里提供一个考勤系统来帮助大家更好地巩固php基础。

代码和页面参考5分钟做一个php的增删改查案例_三杯温开水的博客-优快云博客

项目过程

1. 效果图

点击添加学生可以添加加入考勤的学生,状态state 0表示未到,1表示已到。此外,还有查询、删除等一系列操作。

1.1 信息展示页面

在这里插入图片描述

1.2 学生添加页面

在这里插入图片描述

2. 代码

由于本项目整体结构比较简单,就不详细讲解过程了,直接放出代码提供给大家参考即可。

2.1 首页

页面的搭建用到了Bootstrap框架,直接通过link标签引入cdn即可,在这里面需要注意的就是表格如何渲染数据呢?这里是通过php+H5的方式来渲染的,php的特性很灵活,可以在html中嵌入。类似于JSP

<?php
  # 连接数据库
  require_once 'database.php';
?>
// 忽略其他代码... 只展示核心代码。
<table class="table table-hover">
        <thead>
          <tr>
            <th>Id</th>
            <th>Classess</th>
            <th>StudentName</th>
            <th>Tel</th>
            <th>State</th>
            <th>Signed</th>
            <th>Operation</th>
          </tr>
        </thead>
        <tbody>
         // 循环遍历数据库数据
	<?php
		$query = isset($_GET['query']) ? $_GET['query'] : "";
		if (!$query) {
		  # 查询结果
		  $sql = "SELECT * FROM students";
		} else {
		  $sql = "SELECT * FROM students WHERE classess LIKE '%$query%'";
		}
		# 执行sql
		$result = mysqli_query($conn, $sql);
		?>
		<?php
		// if(!$result){
		//     printf("Error: %s\n",mysqli_error($conn));
		// }
		# 循环遍历表
		while ($row = mysqli_fetch_assoc($result)) {
		  // var_dump($row);
		  ?>
		  <tr>
		  <td><?php echo $row['id']; ?></td>
		  <td><?php echo $row['classess']; ?></td>
		  <td><?php echo $row['student_name']; ?></td>
		  <td><?php echo $row['tel']; ?></td>
		  <td><?php echo $row['signed']; ?></td>
		  <td>
		  <a type="submit" onclick="return confirm('是否已到场?')" href="update.php?id=<?php echo $row['id']; ?>"><button>Sign In</button></a>
		  </td>
		  <td>
		  <button>
		  <a onclick="return confirm('确定要删除吗?')" href="del.php?id=<?php echo $row['id']; ?>">delete</a>
		  </button>
		  </td>
		  </tr>
		  <?php
		}
?>
</tbody>

2.2 添加学生

添加学生的页面分成两部分,一部分是基本的页面渲染即add.html,还有一部分是添加的逻辑功能add.php,这里需要注意,要反复检查自己sql语句是否正确,很多时候页面报数据库的错误都是由sql语句引起的。

// add.php
<?php
$classess = $_GET['classess'];
$student_name = $_GET['student_name'];
$tel = $_GET['tel'];

// 连接数据库
require_once 'database.php';

// 插入sql语句
$sql = "INSERT INTO students (classess, student_name, tel,signed)
VALUES ('$classess', '$student_name', '$tel',false);";

if (mysqli_query($conn, $sql)) {
    echo "新记录插入成功";
    header("location:index.php");
} else {
    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
    echo "添加失败!";
}
header("loaction:add.html");

2.3 数据库连接

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "myDB";

// 创建连接
$conn = mysqli_connect($servername, $username, $password, $dbname);
// 检测连接
if (!$conn) {
    die("连接失败: " . mysqli_connect_error());
}

2.4 删除学生

<?php
// 获取id
$id = $_GET["id"];
// 连接数据库
require_once "database.php";
// 执行要删除的sql语句
$sql = "DELETE FROM `students` WHERE `students`.`id` = $id";
if (mysqli_query($conn, $sql)) //执行sql语句
{
    header("location:index.php");
    // echo "删除成功";
    //删完回去表页面
} else {
    echo "删除失败";
}
// 回到首页
header("Location:index.php");

2.5 签到

<?php
$id = $_GET['id'];
// 连接数据库
require_once "database.php";
// 执行要删除的sql语句
$sql = "UPDATE  `students` SET `signed`=true WHERE `students`.`id` = $id";
if (mysqli_query($conn, $sql)) //执行sql语句
{
    header("location:index.php");
    //删完回去表页面
} else {
    echo "删除失败";
}
// 回到首页
header("Location:index.php");

写在最后

本文可以当作小练习,参考学习即可,大致功能就是这样,大家可以通过该模板自行添加功能。在体验完php之后,发现了许多的问题,php是一门简单、面向对象的,动态的、HTML 内嵌式的语言。在开发中小型项目的时候,还是比较快速的。不过现在随着vue、react前端框架的兴起,php的空间个人感觉会越来越小。当然语言没有好坏之分,我个人是学前端的,了解php是由于公司的需求,在之后的学习也会进一步接触php,respect~

附件

链接:https://pan.baidu.com/s/1kjLVBC9a9DzcJuK0Qc5XAw?pwd=u7un
提取码:u7un

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值