ImはAjaxから成功を収めていますが、意図したメールを受信していないため、PHPに問題はないようです。私はPHPで少し経験がある、私はPHPからいくつかのフィードバックを得るためにいくつかの方法が必要です。Ajaxを使用してmail()の戻り値を確認する方法
のjQuery
function PHP_EMAIL(name, email, message){
var emailInfo = [name,email,message];
$.ajax ({
type: "POST",
url:"the_php_file.php",
data: {email_info_array: emailInfo},
success: function(data) {
alert(data); <---alerts the entire php script back
alert("Email was successfuly sent!); <<<--- alerts success!
but no email recieved
}
});
}
PHP
$email_info = json_decode($_POST['email_info_array']);
$to = "[email protected]";
$subject = 'portfolio contact';
$user_name = $email_info[0];
$user_email = $email_info[1];
$message = $email_info[2];
$headers = "From: website.com";
$headers.= "MIME-Version: 1.0\r\n";
$headers.= "Content-type: text/html; charset=iso-8859-1\r\n";
if(mail($to,$subject,$message,$headers))
{
echo "sent";
}
else
{
echo "fail";
}
HTML
<div class="site-contact-box site-text-20 site-text-grey-violet">
<!-- form -->
<form onsubmit="return false" id="emailform">
<div class="site-form-error">* You must fill all fields of the form *</div>
<br> Name <input type="text" name="name" value="" required> <div class="site-name-error site-text-12"> * invalid name </div>
<br> E-mail <input type="text" name="email" value="[email protected]" required> <div class="site-email-error site-text-12"> * invalid email </div>
<br>
<div class="site-message-error site-text-12"> * message must be more than (8 characters) </div>
<br> <br> please leave a message...
<br> <p class="site-text-12"> (minimum 8 characters) <p>
<br>
<textarea rows="12" cols="50" name="message" form="emailform" required></textarea>
<br>
<div class="site-agree-error site-text-12"> you must agree to terms </div>
<br> <br>
<div class="site-agreement site-text-13 site-text-black">
* I agree to the <a href="#">Terms & Agreement</a> <input type="checkbox" id="agree" required>
</div>
<br>
<input class="site-text-bold site-text-15" type="submit" name="submit" onclick="checkInput()">
</form>
</div>
は、どのようなあなたのhtmlフォームは次のように見えますか? – OldPadawan
onclick()を使用してjavascript関数を呼び出すフォーム、javascript関数は入力をチェックして、上記のようにデータをphpに転送します – horrorfan
フォームのhtml出力は何ですか?それ以外にコンソールのエラー? PHPで? – OldPadawan