zoukankan      html  css  js  c++  java
  • 2021.4.19

    今日学习进度:

      第一天  第二天 第三天  第四天  第五天 
    所花时间(小时) 4.5        
    代码量(行) 200        
    博客量(篇) 1        
    了解到的知识点 html综合应用练习1        

     按下列要求完成各个页面:(提示:在做此题前需先建立一数据库,包含一张表,此表至少包含 5 个字段(姓名,性别,兴趣爱好,家庭住址,备注))(1)制作静态页面 ex01a.php 如图 1 所示,当点击“提交”按钮时,可以向数据库中添加数据,如果添加数据失败,能给出提示,如果添加成功,则跳转到另一页面ex01b.php,如图 2 所示,本页面可以把数据库中所有的学生的资料显示出来。

    2) 当点击 ex01b.php 中的“修改”时,可将网页连接到 ex01c.php 如图 3 所示,可以修改学生的信息。该页面包含一个表单,每个表单控件的默认值均为ex01.php 页面中的学生的信息值。当点击“修改”按钮时,可以将该学生的信息进行修改,并保存到数据库中,成功保存数据后,可将页面转至 ex01b.php。

    3) 当点击“删除”时,如果能成功删除数据,则给出提示“数据删除成功!”,如图4所示,并将网页转至ex01b.php。数据删除失败也给出提示“数据删除失败!”。

    ex01a.php:

    <html>
    <head>
        <title>添加</title>
    </head>
    <body>
    <center>
        <form id="addinfo" name="addinfo" method="post" action="act.php?action=add">
            <table>
                <tr style="background: #666666;font-size: 30px ;text-align: center">
                    <td colspan="2">添加个人资料</td>
                </tr>
                <tr>
                    <td>姓名</td>
                    <td><input id="name" name="name" type="text"/></td>
                </tr>
                <tr>
                    <td>性别</td>
                    <td><input type="radio" name="sex" value="男"/><input type="radio" name="sex" value="女"/></td>
                </tr>
    
                <tr>
    
                    <td>兴趣爱好</td>
                    <td><input type="text" name="hobby" id="hobby"/></td>
                </tr>
    
                <tr>
    
                    <td>家庭住址</td>
                    <td><select id="address" name="address">
                            <option value="">请选择您的居住区域</option>
                            <option value="河北">河北</option>
                            <option value="天津">天津</option>
                            <option value="上海">上海</option>
                            <option value="广州">广州</option>
                            <option value="北京">北京</option>
                            <option value="其他">其他</option>
                        </select></td>
                </tr>
                <tr>
                    <td>备注</td>
                    <td><textarea id="remark" name="remark" rows="5" cols="30">
    </textarea></td>
                </tr>
                <tr>
                    <td><input type="submit" value="提交"/>  </td>
                    <td><input type="reset" value="重置"/>  
                </tr>
            </table>
        </form>
    </center>
    </body>
    </html>

    ex01b.php:

    <!DOCTYPE html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script>
            function doDel(id) {
                if (confirm("确定要删除么?")) {
                    window.location = 'act.php?action=del&id=' + id;
                }
            }
        </script>
    </head>
    <style>
    
        th, td {
            width: 100%;
            word-break: keep-all; /* 不换行 */
            white-space: nowrap; /* 不换行 */
            overflow: hidden; /* 内容超出宽度时隐藏超出部分的内容 */
            text-overflow: ellipsis; /* 当对象内文本溢出时显示省略标记(...) ;需与overflow:hidden;一起使用。*/
        }
    </style>
    <body>
    <center>
        <table width="600" border="1">
            <tr style="background: #666666;font-size: 30px ;text-align: center">
                <td colspan="6">学生个人信息表</td>
            </tr>
            <tr>
    
                <th>姓名</th>
                <th>性别</th>
                <th>爱好</th>
                <th>家庭住址</th>
                <th>备注</th>
    
            </tr>
            <?php
            //1.连接数据库
            try {
                $pdo = new PDO("mysql:host=localhost;dbname=php;", "root", "root");
            } catch (PDOException $e) {
                die("数据库连接失败" . $e->getMessage());
            }
            //2.解决中文乱码问题
            $pdo->query("SET NAMES 'UTF8'");
            //3.执行sql语句,并实现解析和遍历
            $sql = "SELECT * FROM info ";
            foreach ($pdo->query($sql) as $row) {
                echo "<tr>";
                echo "<td>{$row['name']}</td>";
                echo "<td>{$row['sex']}</td>";
                echo "<td>{$row['hobby']}</td>";
                echo "<td>{$row['address']}</td>";
                echo "<td>{$row['remark']}</td>";
                echo "<td>
                         <a href='javascript:doDel({$row['id']})'>删除</a>
                         <a href='ex01c.php?id=({$row['id']})'>修改</a>
                       </td>";
                echo "</tr>";
            }
    
            ?>
        </table>
    </center>
    </body>
    </html>

    ex01c.php:

    <html>
    <head>
        <meta charset="UTF-8">
        <title>学生信息管理</title>
    
    </head>
    <body>
    <center>
        <?php
        // .连接数据库
        try{
            $pdo = new PDO("mysql:host=localhost;dbname=php;","root","root");
        }catch(PDOException $e){
            die("数据库连接失败".$e->getMessage());
        }
        // .防止中文乱码
        $pdo->query("SET NAMES 'UTF8'");       // .拼接sql语句,取出信息
        $sql = "SELECT * FROM info WHERE id =".$_GET['id'];
        $stmt = $pdo->query($sql);//返回预处理对象
        if($stmt->rowCount()> 0 ){
            $stu = $stmt->fetch(PDO::FETCH_ASSOC);//按照关联数组进行解析
        }else{
            die("没有要修改的数据!");
        }
        ?>
        <form id="editstu" name="editstu" method="post" action="act.php?action=edit">
            <input type="hidden" name="id" id="id" value="<?php echo $stu['id'];?>"/>
    
            <table>
                <tr style="background: #666666;font-size: 30px ;text-align: center">
                    <td colspan="2">修改学生信息</td>
                </tr>
                <tr>
                    <td>姓名</td>
                    <td><input id="name" name="name" type="text" value="<?php echo $stu['name'];?>"/></td>
                </tr>
                <tr>
                    <td>性别</td>
                    <td><input type="radio" name="sex" value="男" /><input type="radio" name="sex" value="女" /></td>
                </tr>
    
                <tr>
    
                    <td>兴趣爱好</td>
                    <td><input type="text" name="hobby" id="hobby" value="<?php echo $stu.['hobby']?>"/></td>
                </tr>
    
                <tr>
    
                    <td>家庭住址</td>
                    <td><select id="address" name="address" >
                            <option value ="">请选择您的居住区域</option>
                            <option value ="上海">上海</option>
                            <option value="广州">广州</option>
                            <option value="北京">北京</option>
                        </select></td>
                </tr>
                <tr>
                    <td>备注</td>
                    <td><textarea  id="remark" name="remark"  rows="5" cols="30">
    </textarea></td>
                </tr>
                <tr>
                    <td><input type="submit" value="修改"/>  </td>
                </tr>
            </table>
    
        </form>
    
    </center>
    </body>
    </html>

    act.php:

    <?php
    //操作数据的增删改update
    
    // .连接数据库
    try {
        $pdo = new PDO("mysql:host=localhost;dbname=php;", "root", "root");
    
    } catch (PDOException $e) {
        die("数据库连接失败" . $e->getMessage());
    }
    // .防止中文乱码
    $pdo->query("SET NAMES 'UTF8'");
    // .通过action的值进行对应操作
    switch ($_GET['action']) {
        case 'add':
        {   //增加操作
            $name = $_POST['name'];
            $sex = $_POST['sex'];
            $hobby = $_POST['hobby'];
            $address = $_POST['address'];
            $remark = $_POST['remark'];
    
            //写sql语句
            $sql = "INSERT INTO info VALUES (NULL ,'{$name}','{$sex}','{$hobby}','{$address}','{$remark}')";
            $rw = $pdo->exec($sql);
            if ($rw > 0) {
                echo "<script> //alert('添加成功');
                                   window.location='ex01b.php'; //跳转
                        </script>";
            } else {
                echo "<script> alert('添加失败');
                                   window.history.back(); //返回上一页
                        </script>";
            }
            break;
        }
        case "del":
        {    // .获取表单信息
            //通过id删除信息
            $id = $_GET['id'];
            $sql = "DELETE FROM info WHERE id='{$id}'";
            $rw = $pdo->exec($sql);
            if ($rw > 0) {
                echo "<script> alert('数据删除成功!');
                                   window.location='ex01b.php'; //跳转
                        </script>";
            } else {
                echo "<script> alert('数据删除失败!');
                                   window.history.back(); //返回上一页
                        </script>";
            }
    
            break;
        }
        case "edit" :
        {   // .获取表单信息
            //原id
            $id = $_POST['id'];
            //表单信息
            //修改之后的信息
            $name = $_POST['name'];
            $sex = $_POST['sex'];
            $hobby = $_POST['hobby'];
            $address = $_POST['address'];
            $remark = $_POST['remark'];
            $sql = "UPDATE info SET name='{$name}',sex='{$sex}',address='{$address}',remark='{$remark}',hobby='{$hobby}' WHERE id='{$id}'";
            $rw = $pdo->exec($sql);
            if ($rw > 0) {
                echo "<script>alert('修改成功');window.location='ex01b.php'</script>";
            } else {
                echo "<script>alert('修改失败');window.history.back()</script>";
            }
            break;
        }
    
    }

    运行截图:

     

     

     

     

     

  • 相关阅读:
    @Value不能给静态变量直接赋值问题
    jmeter测试http请求
    SqlServer单步调试
    mysql锁住 Lock wait timeout exceeded; try restarting transaction
    django在model中添加字段报错
    django admin下拉列表不显示值,显示为object的处理
    (原创推荐文章)kerberos服务器端与客户端
    kafka安装与测试
    Linux shell判断文件和文件夹是否存在
    df -h 卡死 如何解决
  • 原文地址:https://www.cnblogs.com/marr/p/14905434.html
Copyright © 2011-2022 走看看