【发布时间】:2015-10-26 12:56:34
【问题描述】:
我几个小时前启动了我的网站,但我的联系表无法正常工作! 我遵循了很多教程,但没有一个对我有用,一定是某个地方有错误......
这是我的 HTML 表单,在我的主页 index.html 上可见:
<form action="mail.php" class="contact-form" method="POST">
<fieldset>
<input name="obj" type="text"><br>
<textarea name="message"></textarea>
<input name="from-name" type="text"><br>
<input name="from-mail" type="text"><br>
<input type="submit" value="Send">
</fieldset></form>
这是我的 mail.php 文件的内容,位于我服务器上 index.html 的同一个文件夹中。 mail.php 仅包含以下代码,没有其他内容。
<?php $name = $_POST['from-name'];
$email = $_POST['from-mail'];
$obj = $_POST['obj'];
$message = $_POST['message'];
$formcontent="from: $name \n Message: $message";
$recipient = "XXX.XXX@gmail.com";
$subject = "$obj";
$mailheader = "from: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You!" . " -" . "<a href="index.html"> Return Home</a>";
?>
所以在这里,每当我点击我的提交按钮时,Chrome 会立即将我重定向到服务器错误 500,没有发送消息。 我哪里做错了?
【问题讨论】:
-
把
<a href="index.html">改成<a href='index.html'>!! -
用
echo "Thank You!" . " -" . "<a href='index.html'> Return Home</a>";替换echo "Thank You!" . " -" . "<a href="index.html"> Return Home</a>";,你不能在另一个(")中使用(")。