我試圖確保別人的錯誤不在這裏,但我似乎無法解決這個問題。當我通過輸入姓名,電子郵件和消息來運行測試時,它會返回對該消息的感謝,但不會發送電子郵件。PHP聯繫表格返回發送,但它不是發送
希望這個人是不是一個愚蠢的錯字
HTML:
<form method="post" action="contact.php" id="contactform">
<div>
<p>Send us your message</p>
</div>
<div>
<label>Username <span class="required">*</span></label>
<input name="name" type="text" id="name" value="" />
</div>
<div>
<label>Email <span class="required">*</span></label>
<input name="email" type="text" id="email" value="" />
</div>
<div>
<label>Message <span class="required">*</span></label>
<textarea name="message" rows="20" cols="50" id="message" ></textarea><br /><br />
</div>
<div>
<input type="submit" value="Submit" class="button">
<input type="reset" value="Reset" class="button">
</div>
</form>
PHP:
<?php
$field_name = $_POST['name'];
$field_email = $_POST['email'];
$field_message = $_POST['message'];
$mail_to = '[email protected]';
$subject = 'Web message from '.$field_name;
$body_message = 'From: '.$field_name."\n";
$body_message .= 'E-mail: '.$field_email."\n";
$body_message .= 'Message: '.$field_message;
$headers = 'From: '.$field_email."\r\n";
$headers .= 'Reply-To: '.$field_email."\r\n";
$mail_status = mail($mail_to, $subject, $body_message, $headers);
if ($mail_status) { ?>
<script language="javascript" type="text/javascript">
alert('Thank you for the message.');
window.location = '/';
</script>
<?php
}
else { ?>
<script language="javascript" type="text/javascript">
alert('Message failed.);
window.location = '/';
</script>
<?php
}
?>
文檔是這樣說的「需要注意的是,只是因爲郵件被接受交付,這並不意味着該郵件實際上會達到預期的目標是很重要的。」 http://php.net/manual/en/function.mail.php最好的辦法是使用SMTP或API – adelowo
我假設你已將$ mail_to變量更改爲[email protected]只是爲了這篇文章,那是不是問題? – TheValyreanGroup