PHP修改表格(增删改)

   要求: 1.熟练shi用  post 和  get  传值        2. php嵌套在HTML中        3.熟练:if 语句(其他语句)的使用

------------------------------------------------------------------------------------

解析变量的时候 引号 可以 看成是 变量自身的 也可以看成 是 格式里自带的 这就好理解 为什么 有的解析出来需要加引号 有的不需要加引号了
 
 
做题永远不要 把 数据库 和 界面割裂开 (租房问题) 要做到 后端 怎么改前端怎么变
 
有些属性 在 div 里面有 默认值 所以用的时候不用设置属性 比如 display 默认 block 即使不写 也默认 同理 checked 属性(详见下面租房例题中)

 

--------------------------------------------------------------------------------------

注意:   1.执行过程中并不是在同一个界面进行的  而是来回跳转界面 因为速度太快 所以感觉界面不动;

        操作界面(显示界面)-->代码执行界面-->操作界面(显示界面)

           2.跳转界面并不是  重新打开界面: js中跳转界面:window.location.href("")

                       PHP中跳转界面:header("location:这里写地址不加引号");

             跳转界面:window.location.href("");

    3.提交按钮 按下时  首先触发点击事件(例如前面说的JS代码 正则表达式中 例题  也可以看下面例题 )执行完毕后再提交信息;

    4.PHP中  post  与 get  的区别(把属性也一起传了过去)

        ①相同点:  post与get 都可以接收不用界面提交的 数据(接收的数据存在数组里面)【关联数组的形式存在】

        ②不同点:  post只可以接受 表单提交的数据 ,get 可以接收非表单传来的数据(包括表单)

                  重点介绍get 方法   :以下只是个特例  ,使用这种方法两个条件:1.自动跳转到代码界面href='shanchu.php

                                                2.?后边表示出要传給post的值?code="要传什么?";

                                                    整体写法 如下:                                               

<a href='shanchu.php?code={$attr[0]}' οnclick=\"return confirm('确定删除么')\">
		删除
		</a>

---------------以上内容 都是自己观点 欢迎指正-----------------------------------------------------------------------------------

1.通过PHP 对数据库进行增删改的方法

难点是有外键关系的(以及相似的) 进行增删改  ;  难点2: 对数据库的修改

主要步骤

1.主界面((需要建立表格)需要修改的界面)①+跳转界面

2.(修改)代码界面(这个界面因为需要填写内容 所以需要 表单元素  <input > 标签) ②+跳转到下一界面(添加界面)

3.添加界面③+跳转界面(跳转到主界面)修改成功在主界面上面显示

难点: 每一步中 都需要用到  多张表格的内容---需要if语句的嵌套

---未完待续

--------------------小知识(自己挂点欢迎指正)-----------------------------------------------------------------------------------         

1.PHP标签内的变量只能由PHP标签内的语句接收;
2.PHP 语句 就是 嵌在语句内部 充当JS语句的
3.echo 输出字符串(输出语句加引号)
4.如果引号内部 还有引号冲突 则使用---转义字符
5.PHP与语句 可以嵌在 任何位置 充当 JS的角色
6.解析变量的时候 如果有 转义字符 转义后如果是字符串 在转义时要加引号

7.只有PHP代码的页面代码区域 只需要写裸的PHP 代码

 8.表单元素中 改变输入内容 修改的是value值  下拉菜单除外   详见  下面例题

---------------------------------以下三个代码区为一个完整的修改过程--------------------(多张表存在关系的处理)-- 

1.第一步:

<!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","123","mydb");
    $sql = "select * from info";
    
    $result = $db->query($sql);
    $attr = $result->fetch_all();
    
    foreach($attr as $v)
    {
        $sex = $v[2];
        $sex = $sex?"":"";
        
        $nation = $v[3];
        $sqln = "select name from nation where code='{$nation}'";
        $rn = $db->query($sqln);
        $an = $rn->fetch_row();
        
        echo "<tr><td>{$v[0]}</td><td>{$v[1]}</td><td>{$sex}</td><td>{$an[0]}</td><td>{$v[4]}</td><td><a href='xiugaiinfo.php?code={$v[0]}'>修改</a></td></tr>";
    }
    
    ?>
    
</table>
</body>
</html>
info.php

2.第二步:

 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 2 <html xmlns="http://www.w3.org/1999/xhtml">
 3 <head>
 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 5 <title>无标题文档</title>
 6 </head>
 7 
 8 <body>
 9 <?php
10 $code = $_GET["code"];
11 $db = new MySQLi("localhost","root","123","mydb");
12 $sql = "select * from info where code='{$code}'";
13 
14 $result = $db->query($sql);
15 $attr = $result->fetch_row();
16 ?>
17 
18 <h1>修改人员信息</h1>
19 <form action="uinfochuli.php" method="post">
20 <div>
21     <input type="hidden" value="<?php echo $attr[0] ?>" name="code" />
22 </div>
23 <div>
24     姓名:
25     <input type="text" name="name" value="<?php echo $attr[1] ?>" />
26 </div>
27 <div>
28     性别:
29     <input <?php echo $attr[2]?"checked='checked'":""; ?> type="radio" name="sex" value="1" />30     <input <?php echo $attr[2]?"":"checked='checked'"; ?> type="radio" name="sex" value="0" />31 </div>
32 <div>
33     民族:
34     <select name="nation">
35         <?php 
36         $sqln = "select * from nation";
37         $rn = $db->query($sqln);
38         $an = $rn->fetch_all();
39         foreach($an as $vn)
40         {
41             if($attr[3]==$vn[0])
42             {
43                 echo "<option selected='selected' value='{$vn[0]}'>{$vn[1]}</option>";
44             }
45             else
46             {
47                 echo "<option value='{$vn[0]}'>{$vn[1]}</option>";
48             }
49         }
50         ?>
51     </select>
52 </div>
53 <div>
54     生日:
55     <input type="text" name="birthday" value="<?php echo $attr[4] ?>" />
56 </div>
57 <div><input type="submit" value="修改" /></div>
58 </form>
59 </body>
60 </html>
xiugaiinfo.php

3.第三步:$r = $db->query($sql); $r是一个boolearn值

 1 <?php
 2 $code = $_POST["code"];
 3 $name = $_POST["name"];
 4 $sex = $_POST["sex"];
 5 $nation = $_POST["nation"];
 6 $birthday = $_POST["birthday"];
 7 
 8 $db = new MySQLi("localhost","root","123","mydb");
 9 $sql = "update info set name='{$name}',sex={$sex},nation='{$nation}',birthday='{$birthday}' where code='{$code}'";
10 
11 echo $sql;
12 
13 $r = $db->query($sql);
14 
15 if($r)
16 {
17     header("location:info.php");
18 }
19 else
20 {
21     echo "修改失败!";
22 }
uinfochuli.php

 

 

 

 

              

转载于:https://www.cnblogs.com/ordinaryk/p/6196653.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值