【发布时间】:2021-04-03 18:46:15
【问题描述】:
我一直在努力在我的个人网页上设置一个 PHP 电子邮件表单,但我遇到了一个问题,当我点击提交时,页面显示 "Cannot post /mail.php"。
我之前在这个网站上看到过几个类似的问题,但我还没有找到任何解决问题的方法。我是 PHP 新手,所以我不确定错误可能有多深,或者我是否可能遗漏了一些明显的东西。
我在 Mac OS Big Sur 上使用 Brackets Live Preview。
我尝试过的事情:
- 确保 mail.php 文件与我的 HTML 文件位于同一目录中
- 确保我在我的 HTML 文件中设置了 name 属性,以便 PHP 可以获取相关的输入信息
- 用 GET 切换 POST(POST 错误,GET 下载 PHP 文件而不是运行它)
- 用 Homebrew 下载 PHP
- 重新下载的括号
作为参考,这是我的代码: HTML 文件:
<form action="mail.php" method="post">
<p>Name</p> <input type="text" name="name">
<p>Email</p> <input type="text" name="email">
<p>Message</p><textarea name="message" rows="6" cols="40"></textarea><br>
<input type="submit" value="Send"><input type="reset" value="Clear">
</form>
PHP 文件:
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$formcontent="From $name \n Message: $message";
$recipient = "email.redacted@gmail.com";
$subject = "Contact Form";
$mailheader = "From $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error");
?>
如果您能深入了解可能出现的问题或采取一些调试步骤,我们将不胜感激!
【问题讨论】:
-
Made sure that the mail.php file is in the same directory as my HTML files.... 但是/mail.php中的/进入基本路径,不是当前路径。删除它,看看会发生什么。 -
我也删除了同样的问题,但感谢您的更正!
-
我不确定是否相关的其他信息,但预览基本上在我的 localhost (127.0.0.1) 上运行 HTML/CSS
-
您能否使用此预览版运行任何 PHP?所以如果你刚刚做了
echo "Hello World";,它会出现吗? -
如果我回显“Hello World”,也会出现同样的错误。我尝试在浏览器中而不是在预览中运行 HTML 文件,当我单击提交时,它只显示 php 文件的文本(如代码)
标签: php html css forms brackets