【发布时间】:2012-03-17 19:07:21
【问题描述】:
我有一个简单的注册表单。我一直在寻找几个小时并尝试了一切 - 基本上我已经将它剥离到发布/获取。当我将方法设置为获取(在表单和脚本页面上)时,它工作正常,当我将其设置为发布时,我收到此错误:
不可接受
在此服务器上找不到请求资源 /tmp/register.php 的适当表示。 此外,在尝试使用 ErrorDocument 处理请求时遇到 404 Not Found 错误。
这是我在表单页面上的代码:
<form id="registration" onsubmit="return validateRegistration();" action="register.php" method="post">
Name: <input type="text" id="name" name="name" placeholder="Required">
<br>
Email: <input type="email" id="email" name="email" placeholder="Required">
<br>
Confirm: <input type="email" id="confirm_email" autocomplete="off" placeholder="Required">
<br>
Password: <input type="password" id="password" name="password" placeholder="Required">
<br>
Confirm: <input type="password" id="confirm_password" autocomplete="off" placeholder="Required">
<br>
City: <input type="text" id="city" name="city" placeholder="Optional">
<br>
Country: <input type="text" id="country" name="country" placeholder="Optional">
<br>
<br>
<hr>
<a href="#">Terms and Conditions</a>
<br>
<input type="submit" value="Accept and Complete Registration">
</form>
在我的脚本页面 (register.php) 上,我有:
<?php
echo "Name: " . $_POST["name"] . "<br>";
echo "Email: " . $_POST["email"] . "<br>";
echo "Password: " . $_POST["password"] . "<br>";
echo "Location: " . $_POST["city"] . ", " . $_POST["country"] . "<br>";
?>
如果我只是转到register.php,它只会在帖子所在的位置显示空白,但如果我提交表单,它会给出 Not Acceptable 406 错误。
有人可以帮我解决这个问题吗?我完全不知所措。谢谢
【问题讨论】:
-
validateRegistration() 是什么样的?
-
我会在我回家时添加它,但我怀疑它与它有什么关系,因为:1.我把它拿出来一次,它没有用 2.它可以与 get 一起使用,只是不发帖
-
我完全取消了验证,但它仍然不起作用。我有一个基本形式:
<form action="register2.php" method="post"> <input type="text" name="field1"> <input type="submit" name="submit" value="Go"> </form>和一个简单的 register2.phpecho $_POST["field1"]如果我将其全部更改为 get 但不是 $_POST (相同的 406 错误)。我已经联系了我的主人,他们说他们没有看到任何服务器错误。 @Joseph 我已经查看了该页面,但我无法弄清楚我可以用它做什么......(就像它不能解决我的问题一样) -
伙计们,我被同样的问题困住了,我尝试了下面给出的所有答案,但没有运气。我有我的 PHP 站点,它由 Windows 服务器托管。有许多表单可以使用 POST 方法,但只有一种不工作。它与 $_GET 方法完美配合。请帮我。 :-(