$ _POST在服务器上不起作用

时间:2014-06-27 16:11:11

标签: php post

我试着制作一个效果很好的小形式。但是因为我想在我的服务器上测试它,它只是没有保存值。

var_dump($_POST);

返回:

array(4) { ["name"]=> string(0) "" ["pass"]=> string(0) "" ["e-mail"]=> string(0) "" ["register"]=> string(12) "registieren!" }

在我的本地服务器上,但

array(0) { }

在我的普通服务器上。

enable_post_data_reading

" on"在两者上。

有没有人有想法?

编辑:

我想我得到了错误。 phpinfo()函数 返回:

REQUEST_METHOD  POST

在我的本地服务器上

REQUEST_METHOD  GET

在我的网络服务器上。我怎样才能改变这一点 - 我没有找到任何有用的东西

这是更多代码:

        define('URL', 'http://localhost/');
        define('WEBSITE_NAME', 'Project/');
        define('URLGAME', 'u/');
        define('LANG', 'en/');

以下是不起作用的表格:

<form method="post" action="'.URL.WEBSITE_NAME.LANG.URLGAME.'register">

在浏览器中,它看起来像这样:

<form method="post" action="http://localhost/Project/en/u/register">

我的服务器上的内容相同,但有这些定义:

        define('URL', 'http://yangidu.de/');
        define('WEBSITE_NAME', 'yang/');
        define('URLGAME', 'u/');
        define('LANG', 'en/');

在浏览器中它看起来像这样:

<form method="post" action="http://yangidu.de/yang/en/u/register">

这是按钮(两个版本都相同):

<input id="submit" type="submit" name="register" value="registieren!" />

如果我输入:

var_dump($_POST);

它返回

array(4) { ["name"]=> string(3) "asd" ["pass"]=> string(3) "asd" ["e-mail"]=> string(3) "asd" ["register"]=> string(12) "registieren!" }

在我的本地服务器上,但

array(0){}

在我的服务器上。

认为错误是因为REQUEST_METHOD不一样。 (我用phpinfo()得到它) 在我的本地服务器上:

REQUEST_METHOD  POST

在我的服务器上:

REQUEST_METHOD      GET

2 个答案:

答案 0 :(得分:2)

我收到了错误: 这个网络服务器每次都重定向我,因此$ _POST丢失了。 现在我改变了动作=&#34;&#34;到了真实的&#34;该网站的来源,因此该网站没有重新加载2次。

无论如何,谢谢你的帮助!

答案 1 :(得分:0)

检查开始表单标记上的method属性。它应该是帖子:

<form method="post" action="/some/url">