我目前正在通过elithecomputerguy的youtube播放列表进行php编程。我是他的11部分系列的第7部分,本节讨论用php发送电子邮件。他在notepad ++上写出了所有的PHP代码,并将其上传到标准的godaddy网络托管帐户。我使用相同的方法,逐行复制他的代码,在同一位置设置文件,当我上传我的email_form.php时,它显示正确
<HTML>
<HEAD>
</HEAD>
<BODY>
<form action="email_script.php" method="POST">
<p>Email Address: <input type="text" name="email" size="30"></p>
<p>Subject: <input type="text" name="subject" size="30"></p>
<p>Message: </p>
<p><textarea rows="10" cols="20" name="message"></textarea></p>
<input type="submit" name="submit" value="Submit">
</BODY>
</HTML>
现在我上传了我的email_script.php文件就好了,看起来就是这样:
<?PHP
$from="test@mikesmtgadvice.com";
$email=$_POST['email'];
$subject=$_POST['subject'];
$message=$_POST['message'];
mail($email, $subject, $message,"From:".$from);
print "Your message has been sent: </br?$email</br>$subject</br>$message</p>
?>
因此,当我访问mysite.com/test/email_form.php时,它可以正常工作并显示此表单。但是,当我填写表单并点击提交时,当它尝试运行脚本时,我得到500内部服务器错误。我不知道在哪里查找此错误,无法找到错误日志,因此无法弄清楚这一点。在视频中,他执行完全相同的过程并且它有效,是否需要在我的服务器中更改设置?
感谢您提前提供的帮助,对于冗长的版本我很抱歉,但我希望尽可能具体。
答案 0 :(得分:0)
你错过了双引号;在打印声明的末尾:
print "Your message has been sent: <br />$email<br />$subject<br />$message</p>";
将其替换为您的打印线,它将修复它。