Mon formulaire de contact sur ma page Web envoie enfin des e-mails, mais il ne l'envoie pas dans le bon format. Voici l'email de ce que je reçois. J'ai brouillé le courriel et l'organisation pour des raisons de confidentialité.formulaire php envoi d'e-mail, mais pas de manière correcte
Quoi qu'il en soit, comme vous pouvez le voir sur la photo, le nom, l'email et le contenu du message que la personne aurait écrit sous la forme de contact sont dans la ligne de sujet au lieu de l'e-mail réelle box- - J'ai noté jibberjabber quand je remplissais le formulaire pour le tester. Est-il possible que je puisse formater mon code afin que le message et le nom qu'ils ont écrit soient dans la boîte de message au lieu de la boîte d'objet, et l'email est envoyé par la personne qui a mis leur email dans le formulaire. Toute aide est grandement appréciée, et merci d'avance!
Voici mon code à ce jour:
HTML
<form id="main-contact-form" name="contact-form" method="post" action="sendemail.php" accept-charset="UTF-8">
<div class="row wow fadeInUp" data-wow-duration="1000ms" data-wow-delay="300ms">
<div class="col-md-6">
<div class="form-group">
<input type="text" name="name" class="form-control" placeholder="Name" required="required" style="color: #ffffff"/>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<input type="email" name="email" class="form-control" placeholder="Email Address" required="required" style="color: #ffffff"/>
</div>
</div>
</div>
<div class="form-group">
<textarea name="message" id="message" class="form-control" rows="4" placeholder="Enter your message" required="required" style="color: #ffffff"></textarea>
</div>
<div class="form-group">
<button type="submit" class="btn-submit">Send Now</button>
</div>
</form>
CSS-- Je vais le mettre ici juste au cas où.
#contact {
background-image: url(../images/contact-bg.jpg);
padding-bottom: 0;
height: auto;
background-attachment: fixed;
}
#contact .heading {
padding-top: 95px;
}
#main-contact-form {
text-align: center;
}
.contact-info {
text-align: left;
}
form {
align: center;
margin: 0 auto;
}
.form-control {
background-color: transparent;
border-color: rgba(255, 255, 255, .8);
height: 50px;
border-radius: 1;
box-shadow: none;
}
textarea.form-control {
min-height: 180px;
resize: none;
}
.form-group {
margin-bottom: 30px;
}
ul.address {
margin-top: 30px;
list-style: none;
padding: 0;
margin: 0;
}
.contact-info ul li {
margin-bottom: 8px;
}
.contact-info ul li a {
color: #fff;
}
.btn-submit {
display: block;
padding: 12px;
width: 100%;
color: #fff;
border: 0;
margin-top: 40px;
}
Java Script
(function ($) {
var messages = {
'progress': '<p><i class="fa fa-spinner fa-spin"></i> Sending email...</p>',
'success': '<p class="text-success">Thank you for contacting us. We will contact you as early as possible.</p>',
'error': '<p class="text-danger">Aw snap! Something didn\'t go right!</p>'
};
var $form = $('form#main-contact-form');
var formStatus = $('<div class="form_status"/>');
$form.submit(function (e) {
e.preventDefault();
$.ajax({
type: 'POST',
url: $form.attr('action'),
data: $form.serialize(),
dataType: 'json',
beforeSend: function() {
formStatus.html(messages.progress).fadeIn().prependTo($form);
},
success: function (data) {
if (data.success === true) {
formStatus.html(messages.success);
} else {
formStatus.html(messages.error);
}
formStatus.fadeIn().delay(3000).fadeOut();
},
error: function() {
formStatus.html(messages.error).fadeIn().delay(3000).fadeOut();
}
});
})
})(jQuery);
PHP
<?php
$to = '[email protected]';
$name = !empty($_POST['name']) ? filter_var(trim($_POST['name']), FILTER_SANITIZE_STRING) : '';
$from = !empty($_POST['email']) ? filter_var(trim($_POST['email']), FILTER_SANITIZE_EMAIL) : $to;
$message = !empty($_POST['message']) ? filter_var(trim($_POST['message']), FILTER_SANITIZE_STRING) : '';
$body = "Name: {$name}\r\nEmail: {$from}\r\nMessage: {$message}";
$body = wordwrap($body, 70, "\r\n");
$headers = [
'MIME-Version: 1.0',
'Content-type: text/plain; charset=iso-8859-1',
"From: $name <$from>",
"Reply-To: <$from>",
'X-Mailer: PHP/' .phpversion()
];
$subject = 'some subject';
$success = mail($to, $body, implode("\r\n", $headers));
if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) === 'xmlhttprequest') {
die(json_encode(['success' => $success]));
}
echo $success ? 'Sent Successfully.' : 'An error occurred';
ini_set('display_errors', 1); error_reporting(E_ALL);
?>
garder à l'esprit - Ne pas poster la question et plus - cela peut conduire à [interdiction de question] (https://stackoverflow.com/help/ question-bans) s, en ayant des questions downvoted/deleted. –