【发布时间】:2022-01-25 14:05:12
【问题描述】:
所以我想为一个可以实际发送电子邮件的网站制作一个联系表,但最终出现了这个错误:
这是我的 html 代码:
<div class="contact-fast">
<div class="contact-form">
<form id="contact-form" method="POST" action="contact-form-handler.php">
<input name="name" type="text" class="form-control" placeholder="Your Name" required> <br>
<input name="email" type="email" class="form-control" placeholder="Your Email" required> <br>
<textarea name="message" class="form-control" placeholder="Message" rows="8" required></textarea> <br>
<input type="submit" class="form-control submit" value="SEND MESSAGE">
</form>
</div>
</div>
这是我的 PHP 代码:
<?php
$name = $_POST['name'];
$visitor_email = $_POST['email'];
$message = $_POST['message'];
$email_from = 'skeremobiel@gmail.com';
$email_subject = 'New Mail From Website';
$email_body = "Username: $name.\n".
"User Email: $visitor_email.\n".
"User Message: $message.\n";
$to = "said444b@gmail.com";
$headers = "From: $email_from \r\n";
$headers .= "Reply-To: $visitor_email \r\n";
if ($visitor_email!=NULL) {
mail($to,$email_subject,$email_body,$headers);
}
header("Location: http://127.0.0.1:5500/social.html");
die()
?>
这是我的页面在提交表单之前和之后的样子:
我认为问题在于,当我单击提交按钮时,我会被定向到 127.0.0.1:5500/contact-form-handler.php(如您在我问题的最后一张图片中所见)。它不执行 php 文件,而只是打开它。 任何帮助将不胜感激!
【问题讨论】:
-
检查你的服务器错误日志,看看为什么会出现 405 错误。
-
@Barmar 我如何在 linux 上做到这一点?
-
这也取决于您使用的网络服务器。您应该能够通过阅读文档和/或简单的谷歌搜索找到您的操作系统和网络服务器组合的错误日志