2010-02-01 80 views
4

我有一个表单和方法设置为在操作页面上发布时,我使用$_POST我没有得到的价值,但如果我使用$_GET$_REQUEST我这样做。

这没有意义。有人能为我澄清吗?

形式的代码是

<form action="create.php" method"POST"> 

刚刚意识到我的方法后失踪的=。

+1

你看到URL中的参数吗? – 2010-02-01 13:29:50

+0

您是否提交了正确的表单,即页面上是否存在更多表单,甚至嵌套表单标签?你使用哪个浏览器?你有一个示例网站显示? – Boldewyn 2010-02-01 13:29:56

+0

你可以发表处理请求的表单代码和php代码吗? – 2010-02-01 13:30:02

回答

9

这听起来像你放错地方或输入了错误的方法,属性和表单被默认为HTTP GET。该形式应该是这样的:

<form method="post" action="file.html"> 
+1

不错 - 你猜对了没有看到任何代码的问题! – 2010-02-01 13:34:10

+0

在发布的代码中,您在'方法'后缺少了等号。很高兴你解决了它 – 2010-09-13 00:06:31

1

什么在为HTML窗体的的method例如设定为:

<form method="POST" ...> 
+0

'基本上我有一个表单和方法设置为后' - 不要发布问题作为答案,这是什么意见。 – 2010-02-01 13:31:13

+0

应该在评论中,而不是回答 – 2010-02-01 13:31:29

+0

嘿,我的'答案'离得太远了。因为这么快而受到惩罚:) – MalphasWats 2010-02-01 13:37:32

1

在PHP ini文件,缺省设置GPC(GET,POST,饼干)和要求阵列具有本身。并确保你真的是action属性中的POST。

1

看起来你typoed你的HTML:

<form action="create.php" method"POST"> 

应该

<form action="create.php" method="POST"> 

你错过了一个等号。

0

你的方法属性是错误的,应该是:

<form action="create.php" method="POST"> 
方法之后
1
<form action="create.php" method="POST"> 

你缺少等号

0

呵呵:-)

<form action="create.php" method="POST"> 

你马虎的写作方式不适合编码...

1

POST和GET是传输表单数据的不同方法,它们都使用不同的方式将输入的值发送到您的应用程序,并且必须以不同的方式处理。对于由form =“post”和$ _GET的表单提交的值,PHP使用$ _POST表示由没有方法或method =“get”的表单提交的值。 $ _REQUEST是$ _POST和$ _GET的组合。

看到区别,最简单的是:用GET提交
参数显示在地址栏中,即
http://example.com/index.php?page=home

通过与价值家里的钥匙页面$ _GET。
帖子参数不会出现在地址栏中。

0

错误似乎是缺少的“=”:) 顺便说一句,$ _REQUEST变量不仅仅是$ _POST和$ _GET的组合,它是一个关联数组,它默认包含$ _GET的内容, $ _POST和$ _COOKIE。;)