我遇到了最奇怪的问题而且我不知道如何解决它。我的表格有第一行:
<form action="index.php" method="POST">
但当我回应$_SERVER['REQUEST_METHOD']
它回应“GET”。我正在使用CodeIgniter,所以我不知道问题是否与此有关。我认为它可能是CI中的表单助手,但我用直接的HTML编写了我的表单,我仍然遇到了问题。有趣的是,如果我将表单复制到本地MAMP安装并运行它,我会“POST”。
我觉得我回归基础并且遗漏了一些明显的东西。有谁可以帮助我吗?感谢。
答案 0 :(得分:1)
答案 1 :(得分:0)
听起来CodeIgniter正在通过某种清理过程运行你的帖子,结果它缺少实际的方法。对于大多数php MVC框架,你不应该通过$ _POST和$ _GET访问你的表单元素。他们有自己的包装来访问这些元素以进行安全和清理......
答案 2 :(得分:0)
看起来你看到的GET只是代码点火器url转换。当你有像localhost / main / page这样没有htaccess的东西时,url cleanup是localhost / index.php?c = main&amp; m = page,这基本上就是GET请求。默认情况下CodeIgniter关于这个主题的政治是你应该总是忽略使用GET并且只使用POST;如其他答案所述,这非常简单。在表单视图中:
<input type="text" name="one" /> in your form
并使用
在控制器中捕捉它$value = $this->input->post('one');
除非你的任务真的有必要,否则不要手动做任何事情。