php实现数据库的增删改查


Posted in PHP onFebruary 26, 2017

1.查询:

数据的显示,这里就可以嵌入php来进行数据的输出

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>无标题文档</title>
</head>

<body>
<table width="100%" border="1" cellpadding="0" cellspacing="0">
  <tr>
    <td>代号</td>
    <td>名称</td>
    <td>性别</td>
    <td>生日</td>
    <td>班级</td>
    <td>操作</td>
  </tr>

<?php
$db = new MySQLi("localhost","root","12345678","heiheihei");
//连接数据库
$sql = "select * from student ";
//写sql语句
$r = $db->query($sql);
//执行sql语句返回给r
if($r)//条件
{
  while ($attr = $r->fetch_row())
  {
    $ssex = "";
     if($attr[2])
     {
       $ssex = "男";
     }
     else
       {
         $ssex = "女";
       }
    echo
    "
 <tr>
    <td>{$attr[0]}</td>
    <td>{$attr[1]}</td>
    <td>{$ssex}</td>
    <td>{$attr[3]}</td>
    <td>{$attr[4]}</td>
//添加一个单击事件,防止不小心删掉
<td><a onclick=\"return confirm('确定要删除吗???')" 
href='shanchu.php?sno={$attr[0]}'>删除</a>
 <a href='xiugai.php?sno={$attr[0]}'>修改</a> </td> </tr>"; } } ?>

 
 

</table>
<a href="tianjia.php" rel="external nofollow" >添加页面</a>
</body>

</html>

2.删除的处理页面

删除时是链接到删除处理页面的,所以还要写一个删除处理页面:

<?php
$aaa = $_GET ["sno"]; //删除方式使用的get,照旧
$db = new mysqli("localhost","root","12345678","heiheihei");
//连接...
$sql = "delete from student WHERE sno='{$aaa}'";
//写sql语句,sno主键
if($db->query($sql)) //执行sql语句
{
  header("location:text.php");
//删完回去表页面
}
else{
  echo "删除失败";
}
?>

来张效果图:

php实现数据库的增删改查

3.添加数据:

点击php实现数据库的增删改查即可进入添加页面

添加页面:

<body>

<h1>添加</h1>
<form action="add.php" method="post" >
  <div>代号:<input type="text" name="sno"/></div>
  <div>名字:<input type="text" name="sname"/></div>
  <div>性别: <input type="radio" value="1" name="sex" />男
    <input type="radio" value="0" name="sex"/>女</div>
  <div>日期:<input type="text" name="sbirthday"/></div>
//创建表时性别是用的1或2来表示的,要是进行修改不知道1或2代表了什么,所以就要进行处理,处理成用户能够明白的男和女

  <div>班级:
  <select name="class">

  <?php
    $db= new MYSQLi("localhost","root","12345678","heiheihei");
//连接...
    $sql = " select * from class ";
//写sql...    

    $r = $db->query($sql);
//执行...返回...
    while($arr = $r->fetch_row())
    {
      echo "<option value='{$arr[0]}'>{$arr[1]}</option>";
      //添上以后回表页面
    }
    ?>

 
  </select>
  </div>
  <div><input type="submit" value="添加"/></div>
</form>

</body>

添加也需要一个处理页面来判断添加:

<?php
$sno = $_POST["sno"];
//$_POST 变量用于收集来自 method="post" 的表单中的值。
$sname = $_POST["sname"];
$ssex = $_POST["ssex"];
$sbirthday = $_POST["sbirthday"];
$class = $_POST["class"];
$db = new mysqli("localhost","root","12345678","heiheihei");
$sql = "insert into student VALUES ('{$sno}','{$sname}','{$ssex}','{$sbirthday}','{$class}')";
//向数据库中添加写的数据
  if($db->query($sql))
{
  header("location:text.php");
  //header() 函数向客户端发送原始的 HTTP 报头。
}
else {
  echo "添加失败";
}


?>

效果图:

php实现数据库的增删改查

4.修改数据:主键不可修改!!

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>无标题文档</title>
</head>

<body>

<h1>修改</h1>

<?php
$sno = $_GET{"sno"};
$db = new mysqli("localhost","root","12345678","heiheihei");
$sql = "select * from student WHERE sno='{$sno}'";
$r = $db->query($sql);
$arr = $r->fetch_row();
?>

 
<form action="update.php" method="post">
  <div>代号:<input readonly="readonly" type="text" name="sno" value="<?php
echo $arr[0];
?>"/></div>

//readonly只可读
 <div>名称:<input type="text" name="sname" value="<?php echo $arr[1]; ?>"/></div> <div>性别: <input type="radio" name="ssex" value="1" <?php echo $arr[2]?"checked='checked'":""; ?>/>男 <!-- 三元运算符,如果性别=ture,默认值就在男上面,否则空--> <input type="radio" name="ssex" value="0" <?php echo $arr[2]?"":"checked='checked'"; ?>/>女 </div> <div>日期:<input type="text" name="sbirthday" value="<?php echo $arr[3]; ?>"/></div> <div>班级:<select name="class">
//value取默认值
 

 <?php
      $sclass = "select * from class";
      $rclass = $db->query($sclass);
      while($attr = $rclass->fetch_row())
      //取到的班级信息
      {
        //判断将要输出的班级是不是和该人员的是否相同
        if($arr[4]==$attr[0])//arr是班级名,attr是班级的代号,俩表
        {
          echo "<option value = '{$attr[0]}' selected='selected'>{$attr[1]}</option>";

        }
        else{
          echo "<option value = '{$attr[0]}'>{$attr[1]}</option>";
        }

      }
      ?>

 
    </select></div>
  <div><input type="submit" value="修改完毕"/></div>

</form>


</body>
</html>

]

修改的处理页面:

<?php
$sno = $_POST["sno"];
$sname = $_POST["sname"];
$ssex = $_POST["ssex"];
$sbirthday = $_POST["sbirthday"];
$class = $_POST["class"];
$db = new mysqli("localhost","root","12345678","heiheihei");
$sql = "update student set sname='{$sname}',
ssex='{$ssex}',
sbirthday='{$sbirthday}',
class='{$class}' WHERE sno='{$sno}'";
//看一下是不是传递过来的sno值;
if($db->query($sql))
{
  header("location:text.php");
}
else{
  echo "修改失败";
}



?>

修改的效果图:

php实现数据库的增删改查

PHP 相关文章推荐
文章推荐系统(三)
Oct 09 PHP
3种平台下安装php4经验点滴
Oct 09 PHP
Smarty+QUICKFORM小小演示
Feb 25 PHP
PHP 一个页面执行时间类代码
Mar 05 PHP
PHP+jQuery实现自动补全功能源码
May 15 PHP
基于php-fpm的配置详解
Jun 03 PHP
PHP反射类ReflectionClass和ReflectionObject的使用方法
Nov 13 PHP
php 伪静态之IIS篇
Jun 02 PHP
php版微信自动获取收货地址api用法示例
Sep 22 PHP
php使用变量动态创建类的对象用法示例
Feb 06 PHP
phpcms配置列表页以及获得文章发布时间
Jul 04 PHP
docker-compose部署php项目实例详解
Jul 30 PHP
php查询及多条件查询
Feb 26 #PHP
php批量删除操作代码分享
Feb 26 #PHP
浅谈PHP的反射API
Feb 26 #PHP
CentOS 上搭建 PHP7 开发测试环境
Feb 26 #PHP
php封装的验证码类分享
Feb 26 #PHP
解决PHP 7编译安装错误:cannot stat ‘phar.phar’: No such file or directory
Feb 25 #PHP
简单谈谈PHP中的trait
Feb 25 #PHP
You might like
用PHP来写记数器(详细介绍)
2006/10/09 PHP
在Debian系统下配置LNMP的教程
2015/07/09 PHP
javascript中的对象和数组的应用技巧
2007/01/07 Javascript
JMenuTab简单使用说明
2008/03/13 Javascript
JavaScript 全角转半角部分
2009/10/28 Javascript
JS高级笔记
2011/07/13 Javascript
jQuery函数的等价原生函数代码示例
2013/05/27 Javascript
正则验证小数点后面只能有两位数的方法
2017/02/28 Javascript
jquery实现的table排序功能示例
2017/03/10 Javascript
微信小程序实现animation动画
2018/01/26 Javascript
使用sessionStorage解决vuex在页面刷新后数据被清除的问题
2018/04/13 Javascript
vue 音乐App QQ音乐搜索列表最新接口跨域设置方法
2018/09/25 Javascript
json数据格式常见操作示例
2019/06/13 Javascript
js函数柯里化的方法和作用实例分析
2020/04/11 Javascript
详解ES6数组方法find()、findIndex()的总结
2020/05/12 Javascript
python pdb调试方法分享
2014/01/21 Python
Python数据结构与算法之列表(链表,linked list)简单实现
2017/10/30 Python
Python实现感知机(PLA)算法
2017/12/20 Python
基于OpenCV python3实现证件照换背景的方法
2019/03/22 Python
使用python PIL库实现简单验证码的去噪方法步骤
2019/05/10 Python
Django中create和save方法的不同
2019/08/13 Python
python3.6生成器yield用法实例分析
2019/08/23 Python
使用python 对验证码图片进行降噪处理
2019/12/18 Python
Python实现扫码工具的示例代码
2020/10/09 Python
时尚的CSS3进度条效果
2012/02/22 HTML / CSS
html5使用canvas画空心圆与实心圆
2014/12/15 HTML / CSS
什么是典型的软件三层结构?软件设计为什么要分层?软件分层有什么好处?
2012/03/14 面试题
高二化学教学反思
2014/01/30 职场文书
高中历史教学反思
2014/02/08 职场文书
2014年五四青年节演讲稿范文
2014/04/22 职场文书
艺术设计专业求职自荐信
2014/05/19 职场文书
2014国庆黄金周超市促销活动方案
2014/09/21 职场文书
2015年清明节网上祭英烈留言寄语
2015/03/04 职场文书
2016党校培训心得体会
2016/01/07 职场文书
幼儿园教师暑期培训心得体会
2016/01/09 职场文书
《七月的天山》教学反思
2016/02/19 职场文书