从以下代码中的表单链接的任何文件都会导致页面抛出此错误:
禁止的
您无权访问此服务器上的 /savetodb.php。
此外,在尝试使用 ErrorDocument 处理请求时遇到 404 Not Found 错误。
代码:
<div id="form">
<?php
$result = mysql_query("SELECT * FROM textdb WHERE id=1")
or die(mysql_error());
$fields = mysql_fetch_assoc($result);
?>
<form action="savetodb.php" method="post">
<p><a href="#">Text from DB One</a><br></p>
<br /><?php echo"<input name=\"one\" type=\"text\" id=\"one\" value=\"" .$fields['one']. "\"/>"; ?>
<br /><br />
<p><a href="#">Text from DB 2</a><br></p><br />
<?php echo"<input name=\"two\" type=\"text\" id=\"two\" value=\"" .$fields['two']. "\">"; ?>
<br /><br />
<p><a href="#">Text from DB 3</a><br></p><br /><?php echo"<input name=\"three\" type=\"text\" id=\"three\" value=\"" .$fields['three']. "\">"; ?>
<br /><br />
<input name="submit" type="submit" value="Save"></form>
</div>
我是否错过了代码中可能导致此问题的某些内容?文件权限设置为 655(我的服务器的默认设置,不允许 777)。
该表单将数据库中的数据导入到可编辑字段中,然后当您单击保存时,它应该将该信息保存回数据库。当您单击保存时,浏览器会显示 Forbidden 错误。
请不要指出我应该使用 PDO 语句,我还在学习:/
问题不在于代码,而在于名为 modsecurity 的服务器插件。它现在已被我的主机禁用并且运行良好!如果您遇到类似的错误,请联系您的主机,为您节省几天的故障排除时间!