zoukankan      html  css  js  c++  java
  • 关于表单提交的问题

    1,关于表单提交地址问题

    demo.php

    <?php
        if($_SERVER['REQUEST_METHOD']==='POST')
        {
            var_dump($_POST); //请求的方式是 POST,当前是点击按钮产生的请求
        }
    ?>
    //表单的处理逻辑

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>登陆</title> </head> <body> //<form action="demo.php" method="post">
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"> //由于文件重命名会导致代码修改,鲁棒性不强 <div> <label for="userName">用户名</label> <input type="text" id="userName" name="userName"> </div> <div> <label for="password">密码</label> <input type="password" id="password" name="password"> </div> <button>登陆</button> </form> </body> </html>

    ①将表单的处理逻辑放在HTML之前,为了更灵活的控制HTML的输出

    ②因为对于表单的处理逻辑不是每一次都需要执行,所以一般会判断请求的方式,从而决定是否执行对数据的处理

    ③一般为了便于维护,我们将表单提交给当前页面本身

    2,关于表单提交方式问题

    ①请求的方式不同

    ②传参方式不同, get 用 url 传参数 , post 用请求体传参数

    ③GET:

      表单数据是通过URL中的 ? 参数传递到服务端的

      可以在地址栏中看到提交的内容

      数据长度有限制,  因为URL 地址长度有限(2000个字符)

    ④POST:

      表单数据是通过请求体传递到服务端的,我们在界面上看不到

      可以提交任何类型的数据,  包括文件

       由于界面上看不到, 浏览器也不储存 , 所以更安全

      注意, 绝不能使用GET来发送密码或其他敏感信息 , 要用 POST

      应该想清楚这次请求主要是去拿东西 ,  还是去送东西

  • 相关阅读:
    XPath使用
    正则表达式使用步骤
    os模块
    每天记十个单词
    Ubuntu下MySQL服务器,客户端安装
    使用Python3将代码打包成exe程序并添加图标的方法
    使用Python自动刷王者荣耀金币
    Ubuntu 18.04TLS命令安装谷歌浏览器
    Ubuntu 18.04TLS命令安装Python3.8
    Ubuntu 18.04TLS命令安装搜狗输入法
  • 原文地址:https://www.cnblogs.com/shanlu0000/p/11581055.html
Copyright © 2011-2022 走看看