zoukankan      html  css  js  c++  java
  • html表单中get与post之间的区别

    当用户在 HTML 表单 (HTML Form) 中输入信息并提交之后,有两种方法将信息从浏览器传送到 Web 服务器 (Web Server)。

    一种方法是通过 URL,另外一种是在 HTTP Request 的 body 中。

    前一种方法,我们使用 HTML Form 中的 method = "get",后一种方法我们使用 HTML Form 中的 method ="post"

    例句如下:

    <form action = "..." method = "get">
    
    <from action = "..." method = "post">
    

    通过 get 或者 post 方法都可以获得 Form 的数据,两者主要区别在于以下几方面:

    Get

    • URL 改变,在URL 里显示 HTML Form 参数的 name/value 值。
    • 只适合有少量参数的 HTML Form,因为 URL 长度有字符限制,不能无限长。
    • 涉及安全性的信息,比如用户密码,不能用 get,因为会在 URL 上显示,不安全。

    Post

    • URL 不改变,不在 URL 里显示 HTML Form 的数据。
    • Form 提交的信息没有长度限制。
    • 涉及安全性的信息,如用户密码,应采用 post 方式。

    我们看看 get 是如何提交 Form 数据的。我们先写一个 HTML 文件,如下:

    <html>
    <head><title>Blablar.com HTML Form Method Get Example</title></head>
    <body>
    <form action ="get.php" method ="get">
    Name: <input type="text" name="username" />
    <input type ="submit" value="ok" />
    </form>
    </body>
    </html>
    

    该 HTML 的显示界面如下:

    html form get

    当你在这个 HTML 文件的表单文本框输入框里输入姓名,比如 "Jacky",然后鼠标点击ok 按钮,会跳转到 get.php,在 get.php 里会显示如下图。

    php $_GET

    你可以看到在浏览器地址栏里的URL是:

    http://localhost:8080/get.php?username=Jacky
    

    注意get.php后面的字符串 ?username=Jacky,这是一对 name/value 数据,前面加一个问号。

    如果你将 form 改成 method = "post",你在浏览器地址栏就看不到这对 name/value 数据,而只有:

    http://localhost:8080/get.php
    

    使用 get 时,第一对 name/value 值前要加一个问号? ,以后每对 name/value 值则要用 & 分开。比如一个 form中有三个参数,如下:

    <form action ="u.php" method ="get">
    Name: <input type="text" name="username" />
    Age: <input type="text" name="age" />
    Gender: <input type="text" name="gender" />
    <input type ="submit" value="ok" />
    </form>
    

    比如你在Name 项填写Jacky,Age项填写50,Gender项填了male,提交之后的 URL 显示为:

    http://localhost:8080/get.php?username=Jacky&age=50&gender=male
  • 相关阅读:
    构建之法 团队和流程
    构建之法之个人技术和流程重点介绍
    几种数据库连接
    Ckidt
    hibernate_04_hibernate多对多的关系映射
    hibernate_03_hibernate一对多的关系映射
    hibernate_02_hibernate的入门
    hibernate_01_SSH环境搭建
    SpringBoot_05_ssm拦截器和默认欢迎页面的设置
    SSM14-通过AOP实现日志记录
  • 原文地址:https://www.cnblogs.com/hanke123/p/4957646.html
Copyright © 2011-2022 走看看