JSON でメールが送信されたことを確認してから、ajax でイベントをキャッチし、画面に成功メッセージを表示します。問題は、メールが送信されず、php スクリプトの最初の部分が原因で "sended":true にリダイレクトされることです。html と css は大丈夫です。私はそれをたくさんテストしました。私が実際に望んでいるのは、phpでメールを送信し、ajaxを使用して成功またはエラーメッセージを表示することです。問題は、PHP を使用するのはこれが初めてで、正しい方法が見つからないことです。私はこれを尋ねませんが、私は今夜までにプロジェクトを提出しなければならず、これが最後に行われることです. http://webofdreams.ro/vworker/finemaid/finemaid.html#のリンクからメールで確認できます。
JS:
$ajax({
"type":"POST",
"url":"sendemail1.php",
"data": { name1: name1Val, emailFrom1: emailFrom1Val, comments: commentsVal},
"dataType":'json',
"success":function(response){
if (response.sended){
alert ("Mail Sended ok"); //Code after mail send
}else{
alert (response.error); //Code or allert on error
}
},
error: function (xhr, ajaxOptions, thrownError){
alert(xhr.status+" "+thrownError);
}
php:
$send = @mail($mailTo, $subject, $message, "From: ".$mailFrom1);
if ($send){
echo mail($mailTo, $subject, $message, "From: ".$mailFrom1) ? '{"sended":true}':'{"sended":false,"error":"Mail send fail."}';
}else{
echo '{"sended":false,"error":"Request Error."}';
};