12 12
发新话题
打印

post和get方式的区别(07/25/7)

post和get方式的区别(07/25/7)

表单的post方式,和get方式的区别!
等我挣了100万我就找个人娶了!哈哈!

TOP

get会附在url上,数据量也会有所限制。不够安全。
post没有get的限制。

TOP

晕,回答也太简单了呗!
等我挣了100万我就找个人娶了!哈哈!

TOP

1、Get 方法通过 URL 请求来传递用户的数据,将表单内各字段名称与其内容,以成对的字符串连接,置于 action 属性所指程序的 url 后,如http://www.dophp.com/test.php?name=do&password=php,数据都会直接显示在 url 上,就像用户点击一个链接一样;Post 方法通过 HTTP post 机制,将表单内各字段名称与其内容放置在 HTML 表头(header)内一起传送给服务器端交由 action 属性能所指的程序处理,该程序会通过标准输入(stdin)方式,将表单的数据读出并加以处理
2、 Get 方式;而get 方式通过 $_get['']来访问提交的内容
3、Get 方式传输的数据量非常小,一般限制在 2 KB 左右,但是执行效率却比 Post 方法好;
4、Get 方式提交数据,会带来安全问题,比如一个登陆页面,通过 Get 方式提交数据时,用户名和密码将出现在 URL 上.
如果页面可以被缓存或者其他人可以访问客户这台机器,就可以从历史记录获得该用户的帐号和密码,所以表单提交建议使用 Post 方法;Post 方法提交的表单页面常见的问题是,该页面如果刷新的时候,会弹出一个对话框

[ 本帖最后由 不懂 于 2007-7-25 09:09 编辑 ]
本帖最近评分记录
  • leo 威望 +2 2007-7-27 11:08
*********************************
天地自在,任我逍遥
http://www.dophp.net/
dophp@qq.com
**********************************

TOP

PHP $_POST变量的作用是:获取method = “post”方法发送的表单变量。
$_POST变量
$_POST变量是一个包含名称[name]何值[value]的组(这些名称和值是通过HTTP POST方法发送的,且都可以利用)
$_POST变量使用“method=POST”来获取表单信息。通过POST方法发送的信息是不可见的,并且它没有关于信息长度的限制。
案例
<form action="welcome.php" method="post">
Enter your name: <input type="text" name="name">
<input type="submit">
</form>

当用户点击“提交Submit”按钮后,URL中不会包含任何表单数据
“welcome.php”文件可以使用“$_POST”变量来获取表单数据(注意:表单栏[form field]内的名称将会自动作为“$_POST”数组中的ID关键词):
Welcome <?php echo $_POST["name"]; ?>
Come on dophp
为什么要使用$_POST?
通过HTTP POST发送的变量不会在URL中显示出来
变量的大小没有限制
然而,因为变量不能在URL中显示出来,所以也不可能把这个页面作为标签储存在收藏夹里。
本帖最近评分记录
  • leo 威望 +3 2007-7-27 11:08
*********************************
天地自在,任我逍遥
http://www.dophp.net/
dophp@qq.com
**********************************

TOP

我来简单补充一下,get方式是有长度限制的,还有post方式的提交后的刷洗会重复提交的问题!
我给个思路:当你处理提交数据成功以后,可以加一个页面的跳转,就跳转本页面就可以,比如本页是index页面当你提交成功以后,就可以加一个<script>location.href='index.php'</script>跳转到本页面,这样你再刷新就不会重复提交表单的数据了!
等我挣了100万我就找个人娶了!哈哈!

TOP

不错啊.  还可以跳转回去  让他继续添加信息~~~`
*********************************
天地自在,任我逍遥
http://www.dophp.net/
dophp@qq.com
**********************************

TOP

跳转回去的话也可以的啊,不过我比较喜欢本页面提交,节省页面。
等我挣了100万我就找个人娶了!哈哈!

TOP

引用:
原帖由 leo 于 2007-7-25 09:18 发表
我来简单补充一下,get方式是有长度限制的,还有post方式的提交后的刷洗会重复提交的问题!
我给个思路:当你处理提交数据成功以后,可以加一个页面的跳转,就跳转本页面就可以,比如本页是index页面当你提交成功以后,就可以加一个l ...
有时浏览器禁用了js就不好用了,我是这样的
复制内容到剪贴板
代码:
echo "<meta http-equiv=\"refresh\" content=\"3;URL=xxx.php\"><div id=\"container\" style=\"margin:40px; padding:40px;text-align:center; font-size:12px; border:#0099FF double;\">提示信息!</div>";
如果不要提示直接跳转就这样
复制内容到剪贴板
代码:
echo "<meta http-equiv=\"refresh\" content=\"0;URL=xxx.php\">";
不用担心禁用的js,也不用担心用header会警告。完美
后面加个exit();就更完美了。好像扯远了

[ 本帖最后由 淡水河边 于 2007-7-25 10:12 编辑 ]
本帖最近评分记录
  • leo 威望 +2 2007-7-27 11:08

TOP

我还是比较倾向于header,哈哈
等我挣了100万我就找个人娶了!哈哈!

TOP

 12 12
发新话题