問題の原因がわかりません! mail()は完全に動作しています(私はすでに単純なPHPファイルでテストしていますが)私のフォームはメールを送信しません!Sendemailを使用したHTMLフォーム
HTML
<section id="contact">
<div id="google-map" class="wow fadeIn" data-latitude="35.7777622" data-longitude="10.8285004" data-wow-duration="1000ms" data-wow-delay="400ms"></div>
<div id="contact-us" class="parallax">
<div class="container">
<div class="row">
<div class="heading text-center col-sm-8 col-sm-offset-2 wow fadeInUp" data-wow-duration="1000ms" data-wow-delay="300ms">
<h2>Contact</h2>
<p>Send a message</p>
</div>
</div>
<div class="contact-form wow fadeIn" data-wow-duration="1000ms" data-wow-delay="600ms">
<div class="row">
<div class="col-sm-6">
<form id="main-contact-form" name="contact-form" method="post" action="sendemail.php">
<div class="row wow fadeInUp" data-wow-duration="1000ms" data-wow-delay="300ms">
<div class="col-sm-6">
<div class="form-group">
<input type="text" name="name" class="form-control" placeholder="Name" required="required">
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<input type="email" name="email" class="form-control" placeholder="Email" required="required">
</div>
</div>
</div>
<div class="form-group">
<input type="text" name="subject" class="form-control" placeholder="Sub" required="required">
</div>
<div class="form-group">
<textarea name="message" id="message" class="form-control" rows="4" placeholder="Type your message" required="required"></textarea>
</div>
<div class="form-group">
<button type="submit" class="btn-submit">Send</button>
</div>
</form>
</div>
<div class="col-sm-6">
</div>
</div>
</div>
</div>
</div>
</section><!--/#contact-->
main.js
// Contact form
var form = $('#main-contact-form');
form.submit(function(event){
event.preventDefault();
var form_status = $('<div class="form_status"></div>');
$.ajax({
url: $(this).attr('action'),
beforeSend: function(){
form.prepend(form_status.html('<p><i class="fa fa-spinner fa-spin"></i> Progress...</p>').fadeIn());
}
}).done(function(data){
form_status.html('<p class="text-success">Thanks for your message</p>').delay(3000).fadeOut();
});
});
sendemail.php
<?php
$name = @trim(stripslashes($_POST['name']));
$from = @trim(stripslashes($_POST['email']));
$subject = @trim(stripslashes($_POST['subject']));
$message = @trim(stripslashes($_POST['message']));
$to = '[email protected]';
$headers = array();
$headers[] = "MIME-Version: 1.0";
$headers[] = "Content-type: text/plain; charset=iso-8859-1";
$headers[] = "From: {$name} <{$from}>";
$headers[] = "Reply-To: <{$from}>";
$headers[] = "Subject: {$subject}";
$headers[] = "X-Mailer: PHP/".phpversion();
mail($to, $subject, $message, $headers);
die;
あなたは私が問題を考え出す助けてくださいもらえますか? sendemail.phpファイルに単純なメール('[email protected] '、' My Subject '、' message ')を追加すると、フォームが送信されるたびにメールが届きます!しかし、私はメール($、$件、$メッセージ、$ヘッダー)を受け取ることはありません。
ありがとうございました
エラー抑制演算子(@)は、コードのデバッグに役立つエラーメッセージを表示しないので使用しないでください。通知を含むPHPエラーを生成しないように、常にコードを記述する必要があります。 –