Php 此表单是如何导致错误的?

Php 此表单是如何导致错误的?,php,html,Php,Html,以下代码中与表单链接的任何文件都会导致页面抛出此错误: 禁止的 您没有在此服务器上访问/savetodb.php的权限 此外,在尝试查找时遇到404 Not Found错误 使用ErrorDocument来处理请求 代码: 我是否在代码中遗漏了一些可能导致这种情况的东西?文件权限设置为655(我的服务器默认不允许使用777) 表单将数据库中的数据导入到可编辑字段中,然后单击“保存”时,应将该信息保存回数据库。单击“保存”时,浏览器将显示禁止的错误 请不要指出我应该使用PDO语句

以下代码中与表单链接的任何文件都会导致页面抛出此错误:

禁止的

您没有在此服务器上访问/savetodb.php的权限

此外,在尝试查找时遇到404 Not Found错误 使用ErrorDocument来处理请求

代码:














我是否在代码中遗漏了一些可能导致这种情况的东西?文件权限设置为655(我的服务器默认不允许使用777)

表单将数据库中的数据导入到可编辑字段中,然后单击“保存”时,应将该信息保存回数据库。单击“保存”时,浏览器将显示禁止的错误

请不要指出我应该使用PDO语句,我仍在学习:/


问题不在于代码,而在于名为modsecurity的服务器插件。它已经被我的主人禁用了,并且工作得很好!如果您遇到类似错误,请与主机联系,以节省几天的故障排除时间

错误404表示找不到文件


确保路径正确,并检查.htaccess中的重写规则。错误404表示找不到文件


确保路径正确,并检查.htaccess中的重写规则。出现这种情况的可能原因有:

  • 文件/savetodb.php不存在
  • 文件权限不允许Web服务器进程访问该文件
  • 您已以无法访问此文件的方式配置了.htaccess或virtualhost

造成这种情况的可能原因有:

  • 文件/savetodb.php不存在
  • 文件权限不允许Web服务器进程访问该文件
  • 您已以无法访问此文件的方式配置了.htaccess或virtualhost

    • 抱歉,这是modsecurity的一个问题,因为表单中有HTML,它阻止了文件的工作

      我的主人现在已经解决了一个非常奇怪的问题


      我将把这个留在这里,以防将来有人遇到同样的问题。谢谢你的帮助

      抱歉,伙计们,这是modsecurity的一个问题,因为表单中有HTML,它阻止了文件的工作

      我的主人现在已经解决了一个非常奇怪的问题



      我将把这个留在这里,以防将来有人遇到同样的问题。谢谢你的帮助

      这两个文件都存在,通过访问浏览器中的url,无需提交表单即可查看。文件权限的设置与网站上的其他页面一样(工作无误)。我不确定是否有权访问.htaccess文件。这只是一个文件。我觉得很奇怪!:(@GT22)您的站点是否有其他部分使用POST,并且工作正常?另外,您能否告诉我们表单文件相对于saveToDb.php的确切位置?它们是否在同一目录中?显然,这是modsecurity的一个问题。关闭该功能后,它现在工作正常了!两个文件都存在,可以在不提交的情况下查看通过在浏览器中访问url来设置表单。文件权限设置与网站上的其他页面一样(工作正常)。我不确定是否有权访问我的.htaccess文件。这只是一个文件。我觉得很奇怪!:(@GT22)您的站点是否有其他部分使用POST,并且工作正常?另外,您能否告诉我们表单文件相对于saveToDb.php的确切位置?它们是否在同一目录中?显然,这是modsecurity的一个问题。关闭了它,现在它工作正常!它是空的。在.htaccess文件中没有任何内容。它是空的奇怪的是,您没有访问savetodb.php的权限。包含表单的文件的权限是什么?您能否绕过表单直接打开savetodb.php(就像测试一样)?抱歉,伙计们,这是modsecurity的问题。我的主机现在已经禁用了它,一切正常!它是空的。在.htaccess文件中没有任何内容。奇怪的是,您没有访问savetodb.php的权限。包含表单的文件的权限是什么?您可以绕过表单直接打开savetodb.php吗(作为测试)?抱歉,伙计们,这是modsecurity的问题。我的主机现在已经禁用了它,一切都很正常!您的.htaccess似乎仍然需要一些修正,因为它没有找到ErrorDocument 404。如果您使用类似Joomla的东西,请确保它过滤了许多利用典型字符串之类的漏洞。这将解决您的问题u、 同样,to.htaccess是modsecurity的一个问题。我的主机现在已经禁用了它,它工作得很好!你的.htaccess似乎还需要一些修正,因为它找不到ErrorDocument 404。如果你使用像Joomla这样的东西,请确保它过滤了许多利用典型字符串之类的漏洞。这会解决你的问题,同样,to.htaccess这是modsecurity的一个问题。它现在已经被我的主机禁用,并且工作得很好!
      <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>