表格不通过邮寄

时间:2015-12-06 16:35:07

标签: php codeigniter post input

我正在使用PHP和CodeIgniter实现一个简单的新闻稿表单,作为一个大项目的一部分。

我的HTML代码如下。

<form method="POST" action='http://sit.com/index.php/Users/subscribenews'>
<div class="input-group">
<input type="email" id="pkemailid" name="pkemailid">
<span class="input-group-btn">
<button class="btn btn-lg btn-primary" type="submit"> Go
</button>
</span>
</div><!-- /input-group -->
</form>

在我的控制器中,我将值处理为

$emailid = $this->input->post('pkemailid');

当我执行$ _POST变量的var_dump时,我得到以下

array(0) { }

最大的问题是我能够在localhost上的WAMP服务器上正确运行它,但它在托管服务器上不起作用。

有趣的是,如果我将POST更改为GET,那么它就会开始工作。

1 个答案:

答案 0 :(得分:0)

这一行

<input type="email" id="pkemailid" name="pkemailid">

尝试将其更改为

<input type="text" id="pkemailid" name="pkemailid">

type =“email”仅为html 5,我不确定 - 但codeigniter可能不支持html 5表单值。

=====编辑

所以我的建议是当你在试图找到一个错误的头发问题的现实阶段 - 得到一个全新的codeigniter副本,安装在你的服务器上,确保你得到欢迎页面。
现在使最简单的形式成为可能,并从控制器方法回显一些东西,以确保您将表单提交给正确的方法。接下来添加一个带有值的隐藏表单字段,并从您的方法中回显该值。

如果一切正常,那么您的服务器就不会出现原始代码中的错误。如果它不起作用,那么你的服务器有问题。