HTML表单中get 和post 的区别

0 篇文章 0 订阅

原文地址:http://blog.sina.com.cn/s/blog_632d19d50100r1h2.html

作者:桃小熊

当用户在 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>

你可以看到在浏览器地址栏里的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
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值