zoukankan      html  css  js  c++  java
  • 数据访问......增删改查

    以Info表为例:

    一、先建立主页面(main.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>Info表主页面</title>
    </head>
    
    <body>
    <h1>主页面</h1>
    <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","123","mydb");
    !mysqli_connect_error() or die("连接失败!");
    $sql = "select * from Info";
    $r= $db->query($sql);
    if($r)
    {
        $attr=$r->fetch_all();
        
        foreach($attr as $v)
        {
            //处理性别
            $sex=$v[2]?"男":"女";
            //处理民族名称
            $sqln="select Name from Nation where Code='{$v[3]}'";
            $rnation = $db->query($sqln);
            $attrn = $rnation->fetch_assoc();
            echo "<tr>
                    <td>{$v[0]}</td>
                    <td>{$v[1]}</td>
                    <td>{$sex}</td>
                    <td>{$attrn['Name']}</td>
                    <td>{$v[4]}</td>
                    <td>
                        <a href='Delete.php?Code={$v[0]}'>删除</a>     
                        <a href='Update.php?Code={$v[0]}'>修改</a>
                    </td>
                 </tr>";                                                  //超链接跳转到相应页面并用GET传值方式将Code值传过去
        }
    }
    ?></table>
    <div>
    <
    a href="Add.php">添加数据</a>
    </
    div>
    </body>
    </html> 

    二、添加数据

    1. 建立添加数据页面(Add.php)

    <title>添加数据</title>
    </head>
    <style type="text/css">
    .form{ width:100%; height:30px; line-height:30px;}
    </style>
    <body>
    <h1>添加数据</h1>
    <form action="AddChuLi.php" method="post">      <!--提交到添加处理页面-->
        <div class="form">代号: <input type="text" name="code" /></div>
        <div class="form">姓名: <input type="text" name="name" /></div>
        <div class="form">性别:    <!--性别为单选按钮 -->
             <input type="radio" value="男" name="sex" /><!--name设为相同,谁选中就提交谁 -->
             <input type="radio" value="女" name="sex" /></div>
        <div class="form">民族:    <!--民族为下拉列表 -->
                <select name="nation">
    <?php //下拉列表每一项是从数据库中查出来的,所以需要嵌入php代码访问数据库 $db=new MySQLi("localhost","root","123","mydb"); $sql="select * from Nation"; $r=$db->query($sql); $attr=$r->fetch_all(); foreach($attr as $v) { echo "<option value='{$v[0]}'>{$v[1]}</option>"; } ?>
                </select>
        </div>
        <div class="form">生日: <input type="text" name="birthday" /></div><br />
    
        <div class="form"> <input type="submit" value="添加数据" /></div>
    </form>
    <div class="form"><a href="main.php">主页面</a></div>
    
    </body>
    </html>

    2. 建立处理添加数据页面(AddChuLi.php)

       因为不用显示,所以为纯php页面

    <?php
    $code = $_POST["code"];    //用变量接收提交过来的值
    $name = $_POST["name"];
    $sex = $_POST["sex"];
    $s = 1;                    //判断性别,性别是布尔型,1代表true,0代表false
    if($sex=="女")
    {
        $s= 0;    
    }
    $nation = $_POST["nation"];
    $birthday = $_POST["birthday"];
    //将接收的数据添加到数据库
    $db = new MySQLi("localhost","root","123","mydb");
    !mysqli_connect_error() or die("连接失败!");
    $sql = "insert into Info values('{$code}','{$name}',{$s},'{$nation}','{$birthday}')";   //性别不能用引号,加引号是字符串,会当做true处理
    $result =$db->query($sql);    //返回true or false
    if($result)   //true     
    {
        header("location:Add.php");    //如果添加成功就跳转到Add.php,跳转用header("location:跳转到的页面");
    }
    else          //false
    {
        echo "添加失败!";    
    }

    三、删除数据

    建立删除数据页面(Delete.php)

    因为不用显示,所以为纯php页面

    在主页面点击删除通过超链接连接到删除数据页面并用GET方法将主键值Code传过去,然后根据主键值确定需要删除的数据

    <?php
    $code=$_GET["Code"];    //用变量接收主键值
    $db=new MySQLi("localhost","root","123","mydb");
    !mysqli_connect_error() or die("连接失败!");
    $sql= "delete from Info where Code='{$code}'";      //通过主键Code删除相应数据
    $r = $db->query($sql);
    if($r)
    {
        header("location:main.php");    
    }
    else
    {
        echo "删除失败!";    
    }

    四、修改数据

    1. 建立修改数据页面(Update.php)

    修改数据页面比较复杂,因为需要根据传过来的Code加载默认值

    在主页面点击修改通过超链接连接到修改数据页面并用GET方法将主键值Code传过去,然后根据主键值确定需要修改的数据,修改数据页面与添加数据页面样式布局一样,并且将需要修改的数据信息显示在页面上

    <title>修改数据</title>
    </head>
    <style type="text/css">
    .form{ width:100%; height:30px; line-height:30px;}
    </style>
    <body>
    <h1>修改数据</h1>
    <?php
    $code=$_GET["Code"];         //得到GET方式传来过的code值
    $db=new MySQLi("localhost","root","123","mydb");    //通过数据库查询code值所有的信息
    !mysqli_connect_error() or die("连接失败!");
    $sinfo="select * from Info where Code='{$code}'";     //根据主键值只能查询一条信息,取值可用fetch_row()
    $r=$db->query($sinfo);
    $arr=$r->fetch_row();    //返回一维索引数组
    ?>
    <!--一个页面可以嵌入多处php代码,不管HTML代码,只看php代码,相当于连接起来的,所以上面定义的变量下面可以找到-->
    <form action="UpdateChuLi.php" method="POST">
        <div><input type="hidden" name="code" value="<?php echo $arr[0] ?>" /></div>    <!--主键值不能修改,但是必须要有才能提交,所以设置隐藏,
    也可以设置只读
    --> <div class="form">姓名: <input type="text" name="name" value="<?php echo $arr[1] ?>" /></div> <!--通过设定value值来显示要修改的数据信息 --> <div class="form">性别: <input type="radio" value="男" name="sex" <?php echo $arr[2]?"checked='checked'":"" ?> />男 <!--若$arr[2]为tru则默认选中男 --> <input type="radio" value="女" name="sex" <?php echo $arr[2]?"":"checked='checked'" ?>/>女 <!--若$arr[2]为false则默认选中女 --> </div> <div class="form">民族: <select name="nation">
              <?php            
                $sql="select * from Nation";
                $r=$db->query($sql);
                $attr=$r->fetch_all();
                foreach($attr as $v)
                {
                    if($v[0]==$arr[3])     //若民族代号等于这个人的民族代号则输出默认选中
                    {
                        echo "<option selected='selected' value='{$v[0]}'>{$v[1]}</option>";    
                    }
                    else                  //否则输出普通的
                    {
                        echo "<option  value='{$v[0]}'>{$v[1]}</option>";
                    }
                }
              ?>
                </select>
        </div>
        <div class="form">生日 :<input type="text" name="birthday" value=" <?php echo $arr[4] ?> "/></div><br />
    
        <div class="form"> <input type="submit" value="修改数据" /></div>
    </form>
    <div><a href="main.php">主页面</a></div>
    
    
    </body>
    </html>

    2. 建立修改数据处理页面(UpdateChuLi.php)

    因为不用显示,所以为纯php页面

    <?php
    $code = $_POST["code"];
    $name = $_POST["name"];
    $sex = $_POST["sex"];
    $s = 1;
    if($sex=="女")
    {
        $s= 0;    
    }
    $nation = $_POST["nation"];
    $birthday = $_POST["birthday"];
    
    $db=new MySQLi("localhost","root","123","mydb");
    !mysqli_connect_error() or die("连接失败!");
    $sql="update Info set Name='{$name}',Sex={$s},Nation='{$nation}',Birthday='{$birthday}' where Code='{$code}'";  //SQL语句要写好
    $r=$db->query($sql);
    if($r)
    {
        header("location:main.php");    
    }
    else
    {
        echo "修改失败!";    
    }
  • 相关阅读:
    C#深入浅出 修饰符(二)
    HDU 5785 Interesting
    HDU 5783 Divide the Sequence
    HDU 5781 ATM Mechine
    UVA 714 Copying Books
    uva 1471 Defense Lines
    UVA 11134 Fabled Rooks
    UVA 11572 Unique Snowflakes
    UVA 11093 Just Finish it up
    UVA 10954 Add All
  • 原文地址:https://www.cnblogs.com/xinghun/p/5468031.html
Copyright © 2011-2022 走看看