分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > IT知识

PHP数据访问的增删改查

发布时间:2023-09-06 01:36责任编辑:胡小海关键词:PHP

在页面中用PHP方式对数据实现增删改查,一共6个页面来实现这个功能,

1.查询页面:

<!--这是查询页面,用来查询数据库中的数据,数据会以表格的形式显示在页面中,用户可以在这个页面执行添加、修改、删除数据的操作--><!doctype html><html><head><meta charset="utf-8"><title>无标题文档</title><!--引入bootstrap文件--><link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"><script src="js/jquery-1.11.3.min.js"></script><script src="js/bootstrap.min.js"></script></head><body><!--创建一个表格--><table class="table table-striped"> ?<caption>人员信息</caption> ?<thead> ???<tr> ?????<th >编号</th> ?????<th >姓名</th> ?????<th >性别</th> ?????<th >生日</th> ?????<th >班级</th> ???</tr> ?</thead> ?<tbody> ?<!--用PHP读取数据库数据并输出到网页-->
 ??<?php ???????$db = new MySQLi("localhost","root","","xuexiao"); ???//创建一个连接对象 ??????????mysqli_connect_error()?die("连接错误!"):""; ???//判断连接是否成功 ???????$sql = "select sno,sname,ssex,date(sbirthday),class from student";//创建一个sql语句 ???????$result = $db->query($sql);//执行sql语句并且接收结果和对象 ???????if($result){ ???//判断是非执行成功 ???????????$arr = $result->fetch_all();//读取查询结果,fetch_all()会读取全部内容 ???????????foreach($arr as $v){ ???//foreach遍历并输出数据 ???????????echo " <tr> ?????????????????????<td>{$v[0]}</td> ?????????????????????<td>{$v[1]}</td> ?????????????????????<td>{$v[2]}</td> ?????????????????????<td>{$v[3]}</td> ?????????????????????<td>{$v[4]}</td> ????????????????????????????????<td><a href=‘./delete.php?sno={$v[0]}‘ onclick=\"return confirm(‘确认删除吗‘)\"><button type=‘button‘ class=‘btn btn-primary‘ >删除</button></a></td> ?????????????????????<td><a href=‘./xiugai.php?sno={$v[0]}‘><button type=‘button‘ class=‘btn btn-primary‘>修改</button></a></td> ???????????????????</tr>"; ???????//用超链接添加修改和删除选项,超链接地址指向下一步的操作页面xiugai.php和delete.php,超链接用get方式把要操作的那条数据的主键值传给下一步的操作页面 ???????????} ???????} ????>
 ?</tbody></table><!--用超链接添加添加选项,超链接地址指向下一步的操作页面tianjia.php--><a href="tianjia.php">添加人员信息</a></body></html>

2.添加页面:

<!--这是查询页面0114-1.php点击添加选项跳转过来的页面,用于添加数据,以表单形式让用户输入数据,点击提交后存入数据库,但是还需要把数据提交给下一个页面add.php处理数据--><!doctype html><html><head><meta charset="utf-8"><title>无标题文档</title><!--引入bootstrap文件--><link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"><script src="js/jquery-1.11.3.min.js"></script><script src="js/bootstrap.min.js"></script></head><body><h1>添加信息</h1><div class="panel panel-default" style="width:500px"> ???<div class="panel-body"> ???????<!--form里指定好提交时接收提交的数据的文件,该文件会做下一步的数据处理,数据的提交方式选用post保密提交以保护数据隐私--> ???????<form action="add.php" method="post"> ???????????<div class="input-group"> ???????????????<span class="input-group-addon">编号</span> ???????????????<!--要指定好name值以便提交--> ???????????????<input type="text" class="form-control" placeholder="请输入编号" name="sno"> ???????????</div> ???????????<br/> ???????????<div class="input-group"> ???????????????<span class="input-group-addon">姓名</span> ???????????????<!--要指定好name值以便提交--> ???????????????<input type="text" class="form-control" placeholder="请输入姓名" name="sname"> ???????????</div> ???????????<br/> ???????????<div class="input-group"> ???????????????<span class="input-group-addon">性别</span>&nbsp;&nbsp; ???????????????<!--性别用单选框选择,指定好name值--> ???????????????<label for="sex1">男&nbsp;</label><input type="radio" name="ssex" id="sex1" value="男" checked/>&nbsp;&nbsp; ???????????????<label for="sex2">女&nbsp;</label><input type="radio" name="ssex" id="sex2" value="女" /> ???????????</div> ???????????<br/> ???????????<div class="input-group"> ???????????????<span class="input-group-addon">生日</span> ???????????????<!--要指定好name值以便提交--> ???????????????<input type="text" class="form-control" placeholder="请输入生日" name="sbirthday"> ???????????</div> ????????????<br/> ???????????<div class="input-group"> ???????????????<span class="input-group-addon">班级</span> ???????????????<!--要指定好name值以便提交--> ???????????????<input type="text" class="form-control" placeholder="请输入班级" name="class"> ???????????</div> ???????????<br/> ???????????<!--提交按钮执行添加,会把数据提交给form指向的下一个处理页面--> ???????????<input class="btn btn-default" type="submit" value="添加" > ???????????????</form> ???</div></div></body></html>

3.处理数据添加的页面

<?php//这是tianjia.php提交后用来处理数据的页面 ???$arr = $_POST; ???//接收传过来的数据,以post方式提交就用全局变量$_POST接收,接收到以个数据的关联数组,之前的页面里的name就是关联的索引 ???//var_dump($arr); ???$sno = $arr["sno"]; ???//分别取出每一个数据 ???$sname = $arr["sname"]; ???$ssex = $arr["ssex"]; ???$sbirthday = $arr["sbirthday"]; ???$class = $arr["class"]; ???????$db = new MySQLi("localhost","root","","xuexiao");//创建一个连接对象 ???mysqli_connect_error()?die("连接错误"):"";//判断连接是否成功 ???$sql = "insert into student values(‘$sno‘,‘$sname‘,‘$ssex‘,‘$sbirthday‘,‘$class‘)";//创建一个sql语句 ???$result = $db->query($sql);//执行sql语句并接收结果和对象 ???if($result){//判断执行是否成功 ???????echo "<script type=‘text/javascript‘> ???????????window.location.href=‘tianjia.php‘; ???????</script>";//执行成功就跳转回添加页面,通过输出js代码实现 ???}else{ ???????echo "添加失败!"; ???//执行失败,输出提示 ???}

 

4.处理删除数据的页面

<?php //这是查询页面0114-1.php点击删除后跳转过来用来处理数据的页面 ???$sno = $_GET["sno"];//删除选项用超链接的get方式传值,这里用$_GET接收数据,虽然只有一个数据但是这还是一个关联数组 ???//echo $sno; ???$db = new MySQLi("localhost","root","","xuexiao");//建立连接对象 ???mysqli_connect_error()?die("连接失败!"):"";//判断连接是否成功 ???$sql = "delete from student where sno={$sno}";//创建一个sql语句 ???$result = $db->query($sql);//执行sql语句并接收结果和对象 ???if($result){ ???//判断是否执行成功 ???????echo "<script type=‘text/javascript‘> ???????????window.location.href=‘0114-1.php‘; ???????</script>"; ???//执行成功,输出js代码以返回到查询页面 ???}else{ ???????echo "删除失败!"; ???//执行失败,输出提示 ???}

5.在查询页面点击修改后弹出的修改页面

<!--这是查询页面0114-1.php点击修改后跳转过来的页面,页面会把要修改的那条数据的值默认输出在页面中,点击修改后会修改数据,但是还需要提交到下一个页面update.php中处理数据--><!doctype html><html><head><meta charset="utf-8"><title>无标题文档</title><!--引入bootstrap文件--><link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"><script src="js/jquery-1.11.3.min.js"></script><script src="js/bootstrap.min.js"></script></head><body>
<?php ????$sno = $_GET["sno"]; ???//修改选项是用超链接的get方式传值,所以用$_GET接收数据,注意虽然只有一个数据,但是这还是以个关联数组 ???$db = new MySQLi("localhost","root","","xuexiao"); ???//建立一个连接对象 ???mysqli_connect_error()?die("连接错误!"):""; ???//判断连接是否成功 ???$sql = "select sno,sname,ssex,date(sbirthday),class from student where sno=‘{$sno}‘";//创建一个sql语句 ???$result = $db->query($sql); ???????//执行sql语句并接收结果和对象 ???$arr = $result->fetch_row(); ???//读取查询结果?>
<h1>修改信息</h1><div class="panel panel-default" style="width:500px"> ???<div class="panel-body"> ???????<!--form里指定好提交时接收提交的数据的文件,该文件会做下一步的数据处理,数据的提交方式选用post保密提交以保护数据隐私--> ???????<form action="update.php" method="post"> ???????????<div class="input-group"> ???????????????<span class="input-group-addon">编号</span> ???????????????<!--把默认值即数据相对应的值写入表单中--> ???????????????<input type="text" class="form-control" placeholder="请输入编号" name="sno" readonly value="<?php echo $arr[0] ?>"> ???????????</div> ???????????<br/> ???????????<div class="input-group"> ???????????????<span class="input-group-addon">姓名</span> ???????????????<!--把默认值即数据相对应的值写入表单中--> ???????????????<input type="text" class="form-control" placeholder="请输入姓名" name="sname" value="<?php echo $arr[1] ?>"> ???????????</div> ???????????<br/> ???????????<div class="input-group"> ???????????????<span class="input-group-addon">性别</span>&nbsp;&nbsp; ???????????????<!--把默认值即数据相对应的值写入表单中,性别用三元运算判断男女并添加默认选中属性checked--> ???????????????<label for="sex1">男&nbsp;</label><input type="radio" name="ssex" id="sex1" value="男" <?php echo $arr[2]="男"?"checked":""; ?>/>&nbsp;&nbsp; ???????????????<label for="sex2">女&nbsp;</label><input type="radio" name="ssex" id="sex2" value="女" <?php echo $arr[2]="女"?"checked":""; ?> /> ???????????</div> ???????????<br/> ???????????<div class="input-group"> ???????????????<span class="input-group-addon">生日</span> ???????????????<!--把默认值即数据相对应的值写入表单中--> ???????????????<input type="text" class="form-control" placeholder="请输入生日" name="sbirthday" value="<?php echo $arr[3] ?>"> ???????????</div> ????????????<br/> ???????????<div class="input-group"> ???????????????<span class="input-group-addon">班级</span> ???????????????<!--把默认值即数据相对应的值写入表单中--> ???????????????<input type="text" class="form-control" placeholder="请输入班级" name="class" value="<?php echo $arr[4] ?>"> ???????????</div> ???????????<br/> ???????????<!--修改好了点击提交,数据会提交给form指定的下一个页面update.php--> ???????????<input class="btn btn-default" type="submit" value="修改" > ???????????????????</form> ???</div></div></body></html>

6.处理修改数据的页面

<?php //这是xiugai.php提交后用来处理数据的页面 ???$arr = $_POST;//接收传过来的数据,以post方式提交就用全局变量$_POST接收,接收到以个数据的关联数组,之前的页面里的name就是关联的索引 ???//print_r($arr); ???$sno = $arr["sno"]; ???//分别取出每一个数据 ???$sname = $arr["sname"]; ???????$ssex = $arr["ssex"]; ???$sbirthday = $arr["sbirthday"]; ???$class = $arr["class"]; ???????$db = new MySQLi("localhost","root","","xuexiao");//创建一个连接对象 ???mysqli_connect_error()?die("连接错误!"):"";//判断连接是否成功 ???$sql = "update student set sname=‘{$sname}‘,ssex=‘{$ssex}‘,sbirthday=‘{$sbirthday}‘,class=‘{$class}‘ where sno={$sno}";//创建一个sql语句 ???$result = $db->query($sql);//执行sql语句并接收结果和对象 ???if($result){ ???//判断是否执行成功 ???????echo "<script type=‘text/javascript‘> ???????????window.location.href = ‘0114-1.php‘ ???????</script>"; ???//执行成功,输出js代码以跳转回查询页面 ???}else{ ???????echo "修改失败!"; ???//执行失败,输出提示 ???}

PHP数据访问的增删改查

原文地址:https://www.cnblogs.com/zxbs12345/p/8287745.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved