尝试提交简单表单php atom时出现HTTP错误405

尝试提交简单表单php atom时出现HTTP错误405,php,html,atom-editor,Php,Html,Atom Editor,与之相关的人 我最近学习了HTML、CSS、JS,现在还学习了PHP。我在Atom中工作,并使用Atom live server观看我正在做的事情。我学习了关于PHP的W3schools课程,即使我复制了他们的代码,我也会在Google Chrome中收到一个错误(HTTP错误405)。在调查了一段时间后,我找不到解决方案。我已经向atom添加了一个PHP服务器,并设置了正确的路径。我将在下面附上相关代码: <!DOCTYPE html> <html lang="en

与之相关的人

我最近学习了HTML、CSS、JS,现在还学习了PHP。我在Atom中工作,并使用Atom live server观看我正在做的事情。我学习了关于PHP的W3schools课程,即使我复制了他们的代码,我也会在Google Chrome中收到一个错误(HTTP错误405)。在调查了一段时间后,我找不到解决方案。我已经向atom添加了一个PHP服务器,并设置了正确的路径。我将在下面附上相关代码:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>Title</title>
    <link rel = "stylesheet" src = "stylesheet.css">
  </head>
  <body>
    <form action="passwords.php" method = "post">
      <input type = "text" name = "Username" placeholder = "Username" required>
      <input type = "password" name = "Password" placeholder="Password" required>
      <input type = "submit" value = "Submit">
    </form>
    <script src = "script.js"></script>
  </body>

标题
以及php文件:

<html>
<body>
  <? php echo $_POST["Username"]; ?>
  <? php echo $_POST["Password"]; ?>
</body>
</html>

我从来不知道Atom有一个php服务器,所以我只是尝试一下

但我必须预先声明,我没有收到您的http 405错误

我的文件设置 我将您的主文件设置为index.php,将您的passwords.php设置为原样

在ATOM中,我右键单击index.php并选择“PHPServer Here”,它启动了带有URL
的Chrome浏览器http://localhost:8000/index.php
。 所以显示了表格。。。然后填写并单击submit按钮,进入
http://localhost:8000/passwords.php

但您还有另一个问题,因为PHP开始标记中有空格


应该是

<html>
<body>
  <?php echo $_POST["Username"]; ?>
  <?php echo $_POST["Password"]; ?>
</body>
</html>


使用
的另一种选择是,我只是想知道发生了什么。首先,我尝试安装XAMPP以及Apache和mySQL服务器(结果证明这不是解决方案,基本上没有用)。但当我启动这些服务器时,我发现为这些服务器保留的端口由于某种原因被阻塞(可能是由McAffee Livesafe)。这使我尝试更改Atom中内置PHP服务器中的端口。我把它从8000改为8081。接下来,当我试图将PHP服务器设置为index.PHP文件时,Windows提示我是否允许PHP服务器位于相关端口。我显然是这样做的。在这之后,我在passwords.PHP中编写的PHP代码工作了

附加备注 对于遇到相同问题的人:由于某种原因,atom中的atom live服务器无法与PHP文件一起正常工作。如果您使用任何PHP文件,启动这样的服务器都是无用的,因为您将得到与我相同的错误。所以归根结底就是刷新页面


感谢所有试图帮助我解决问题的人!尽管它可能没有给我带来最终的解决方案,但它仍然帮助了我很多。

你能在你的php服务器中运行简单的echo“hello world”吗?你使用的是什么类型的HTTP服务器?请删除不必要的空格。@MohammedBillal我刚刚尝试过,但我认为文件中的php不是问题所在。无论我插入什么代码,提交表单时,打开的页面只会返回一个错误。@SalimIbrogimov我甚至不知道如何找到它……感谢您快速而全面的回复。这是我第一次向stackoverflow发帖,我很高兴这么快就收到了帮助。现在我尝试了你的建议,但是当我用php扩展名更改文件并将php服务器设置为index.php时,我得到了一个带有“listing directory/”的选项卡,它只列出了保存在我的文件夹中的文件。我也改变了间距,所以谢谢你的提示@NielsvandenHeuvel所以让我们后退一步。。。您的实际文件结构是什么?您在“直接列表”中看到了什么?@Niels van den Heuvel您甚至不需要password.php文件。首先在同一索引文件中发布密码,查看表单是否正常工作。删除所有内容,并在基本php上复制和粘贴W3Schools中的工作示例。如果这仍然不起作用,那么问题在于您的文件结构。打印post变量应该不会花那么长时间。错误403表示您正在发送或接收一个格式错误的请求,这是一个客户端错误。@TimBrownlaw不确定您是否收到我在线程上的最后一条评论的通知;但正如你所见,我解决了这个问题。谢谢你们的帮助,伙计们@MohammedBilal我不确定你是否收到我最后一次评论的通知;但正如你所见,我解决了这个问题。谢谢你们的帮助,伙计们!我建议您使用netbeanside或eclipseideforphp进行适当的开发。这些嬉皮士文本编辑器基本上专注于使用一点php之类的东西进行JavaScript开发。@MohammedBilal感谢您的提示。我一定会调查的。我已经在使用eclipse for java了。
<html>
<body>
  <?php echo $_POST["Username"]; ?>
  <?php echo $_POST["Password"]; ?>
</body>
</html>
<?php
// Enable FULL Error Reporting on the screen
// ONLY USE IN DEVELOPMENT
error_reporting(E_ALL);
ini_set('display_errors', 1);
<html>
<body>
  <? php echo $_POST["Username"]; ?>
  <? php echo $_POST["Password"]; ?>
</body>
</html>