Php 非常奇怪的行为

Php 非常奇怪的行为,php,forms,codeigniter,post,submit,Php,Forms,Codeigniter,Post,Submit,我无法解决这个问题。前一分钟它工作正常,现在不行了,我看不出有什么变化!! 我的问题只是提交一个登录函数的用户名和密码。表单方法设置为“post”,但由于某种原因,没有数据通过。如果我转储$\u请求或$\u POST,它们将返回空。 我知道表单正在提交,因为如果我将方法更改为“get”,我将按预期接收数据。有人能想出什么理由,为什么在“发布”不起作用的情况下“获取”会起作用?!?!?如果相关的话,我正在使用codeigniter框架。我似乎记得codeignitor阻止直接访问$\u POST-

我无法解决这个问题。前一分钟它工作正常,现在不行了,我看不出有什么变化!! 我的问题只是提交一个登录函数的用户名和密码。表单方法设置为“post”,但由于某种原因,没有数据通过。如果我转储$\u请求或$\u POST,它们将返回空。
我知道表单正在提交,因为如果我将方法更改为“get”,我将按预期接收数据。有人能想出什么理由,为什么在“发布”不起作用的情况下“获取”会起作用?!?!?如果相关的话,我正在使用codeigniter框架。

我似乎记得codeignitor阻止直接访问$\u POST-检查文档(比如$this->input->POST或类似的东西)

我会首先检查是否有@Pete指出的任何CI特定原因


我唯一想到的另一个想法是,您可能有一个
.htaccess
文件,其中包含
mod_rewrite
指令,并且头重定向是出于某种原因而不是内部原因进行的。标题重定向会传递GET变量(如果使用
[QSA]
),但会丢失POST变量。

能否显示表单的HTML代码?不,$\u POST就可以了。CI仅取消设置$\u GET(仅使用我的一个CI实例进行检查)。然而,@musoNic80:$this->input->post()有什么作用吗?index.php中的var_dump是否显示了相同的问题?@Boldewyn:$this->input->post()返回false,根据CI文档,这意味着该变量不存在。我有一个全局分析器,上面显示的$\u POST数组为空。我不明白为什么会突然发生头重定向。我没有添加.htaccess文件,所以它无法解释为什么它只是停止工作。不过,我会检查一下。有一个重定向正在进行,但被深埋在代码的某个地方,而不是在.htaccess文件中。花了相当多的调试才找到它……:-)