0
私はPHPで簡単な電子メール機能を設定しようとしています。同じ問題に取り組んでいる他の質問を見ても、答えが出ているのと同じことをやっているようです。ただし、電子メールを送信しようとすると、送信されません。PHPが連絡フォームから電子メールを送信しない
HTML
<form id="contactMeForm">
<div class="formField">
<label for="senderName">Name:</label>
<input type="text" id="senderName" class="textField" placeholder="Your name" />
</div>
<div class="formField">
<label for="senderEmail">Email:</label>
<input type="text" id="senderEmail" class="textField" placeholder="Your email" />
</div>
<div class="formField">
<label for="contactReason">Contact reason:</label>
<select id="contactReason">
<option></option>
<option>I'd like a quote for a website.</option>
</select>
</div>
<div class="formField" id="message">
<div id="senderPhone">
<label for="returnPhone">Contact number:</label>
<input type="text" id="returnPhone" class="textField" placeholder="Best phone number to reach you at." />
</div>
<label for="senderMessage">Message:</label>
<textarea id="senderMessage"></textarea>
</div>
JS
$.ajax({
type: "POST",
url: "scripts/email.php",
data: {name: senderName, email: senderEmail, reason: contactReason, phone: returnPhone, message: senderMessage},
dataType: "json",
success: function(response){
contactMeForm.style.display = "none";
formButtons.style.display = "block";
confirmMessage.style.display = "block";
buttons[1].style.display = "none";
contactMeHeader[0].textContent = "Your message has been sent.";
}
})
PHP
<?php
$name = $_POST["name"];
$email = $_POST["email"];
$reason = $_POST["reason"];
$phone = $_POST["phone"];
$headers = "From: " .$email ."\r\n";
$message = $_POST["message"];
mail("[email protected]", $reason, $message, $headers);
echo json_encode(array($name, $email, $reason, $phone, $message));
?>
php.iniの
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = smtp.gmail.com
; http://php.net/smtp-port
smtp_port = 25
私はWindowsマシン上でEasyPHPとApacheサーバを実行していますよ。また、エラーメッセージも表示されません。
ああ、gotcha。ありがとうございました –