【发布时间】:2016-01-30 12:05:57
【问题描述】:
我有一个简单的 HTML 表单,它实际上在我的本地主机和少数服务器上运行良好。但是上次我把它放在我的代码中时,我明白它不会用POST 发送数据,尽管我已经写了method="post"。这是我第一次遇到这个问题,我不知道它是来自我身边还是来自服务器。
当我在本地主机中转储GLOBAL 参数$_SERVER 时,参数REQUEST_METHOD 是POST,但是当我将它转储到服务器上时它是GET。我也试过改.htaccess中的方法,但没有结果。
这是我的表格:
<form action="/auth/login" method="post">
<div id="error">
<?
if (isset($errors)) {
foreach ($errors as $error) {
echo $error . "<br>";
}
}
if (isset($invalid)) {
echo $invalid;
}
?>
</div>
<div id="login-box-name" style="margin-top:20px;">Login:</div>
<div id="login-box-field" style="margin-top:20px;">
<input name="login" class="form-login" type="text"/>
</div>
<div id="login-box-name">Password:</div>
<div id="login-box-field">
<input name="password" type="password" class="form-login"/>
</div>
<br />
<input type="image" src="/images/login-btn.png" width="103" height="42" style="margin-left:90px;" />
</form>
当我在服务器上打印 $_POST 或 $_POST['login'] 时,它们是空的,尽管我已经传递了参数。
public function action_login() {
echo "<pre>";
var_dump($_SERVER); // this is returns server data, where REQUEST_METHOD is GET on current server, but POST in my local
var_dump($_POST); // this is empty
echo "</pre>";
}
是来自服务器还是主机配置?
【问题讨论】:
-
你可以使用任何框架吗???还是核心 php ??
-
我正在使用 Kohana 框架,并且我在其他几个项目中使用了相同的代码并且效果很好,这个项目和代码也在我的本地服务器上运行,但它不发送 POST当前服务器上的数据。我的问题是这是否可以来自服务器配置?