php电子邮件表单内部服务器错误

时间:2014-10-30 17:19:46

标签: php html forms email

我已经开始为网站制作php电子邮件表单了,我不确定它是否是代码中的内容或其他东西,但我一直在显示内部服务器错误在线测试。

以下是php和html代码作为示例。

HTML

 <form action="form.php" method="post" name="Contact form">
 <p>First Name:
 <input name="first_name" type="text" />
 </p>
 <p>

Last Name:
<input name="last_name" type="text" />
  </p>
   <p>

Email:
<input name="email" type="text" />
   </p>
   <p>
     Message:
     <textarea name="message" id="textarea" cols="30" rows="5"></textarea>
   </p>
   <p>
<input type="submit" name="Submit" id="Submit" value="Submit" />
<input type="reset" name="reset" id="reset" value="Reset" />
   </p>

 </form>

PHP

 <?php

 $first_name = $_POST['first_name'];
 $last_name = $_POST['last_name'];
 $first_name = $_POST['email'];
 $first_name = $_POST['message'];

 $to = "joel@justjoel.co.uk";
 $subject = "New Message";

 mail ($to, $subject, $message, "From:" . $first_name . $last_name);
 echo "Your message has been sent";

 ?>

这是错误消息

内部服务器错误

服务器遇到内部错误或配置错误,无法完成您的请求。

请与服务器管理员webmaster @ localhost联系,告知他们错误发生的时间,以及可能导致错误的任何操作。

服务器错误日志中可能提供了有关此错误的更多信息。

Apache / 2.2.3(CentOS)服务器在justjoel.co.uk端口80

1 个答案:

答案 0 :(得分:-1)

您未正确分配变量:

$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$first_name = $_POST['email'];
$first_name = $_POST['message'];

应该是:

$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$email = $_POST['email'];
$message = $_POST['message'];

我的猜测是,这会导致它在以后尝试访问$message时失败