zoukankan      html  css  js  c++  java
  • 数据库连接:操作数据增删改查

    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">添加页面</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 "删除失败";
    }
    ?>

     

    来张效果图:

    3.

    添加数据:

    点击即可进入添加页面

    添加页面:

    <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 "添加失败";
    }
    
    
    ?>

    效果图:

    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 "修改失败";
    }
    
    
    
    ?>

    修改的效果图:

  • 相关阅读:
    洛咕 P4131 [WC2005]友好的生物
    P3354 [IOI2005]Riv 河流
    洛咕 P3645 [APIO2015]雅加达的摩天楼
    洛咕 P4528 [CTSC2008]图腾
    CSDN不登录阅读全文(最新更新
    #6472. 「ICPC World Finals 2017」难以置信的任务 Mission Improbable
    #6435. 「PKUSC2018」星际穿越
    #2009. 「SCOI2015」小凸玩密室
    #2007. 「SCOI2015」国旗计划
    PKUWC2018题解
  • 原文地址:https://www.cnblogs.com/xuan584521/p/6421919.html
Copyright © 2011-2022 走看看