Salut !
J'ai créé un formulaire de contact, en html/jquery, qui communique, avec la fonction $.post(), avec une page php qui doit m'envoyer le mail.
Seulement, tout semble marcher (gestion des erreurs en particulier), mais lorsque tout est bon, le mail ne semble pas être envoyé
Voici mes codes :
Formulaire :
jQuery :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 <div id="response"> </div> <p class="label"> Votre Email <br /> <input type="text" name="votremail" id="votremail" value="<?php echo $votremail; ?>" /> </p> <p class="label"> Votre message <br /> <textarea cols="66" rows="6" name="message" id="message"><?php echo $message; ?></textarea> </p> <p class="submit"> <input type="submit" id="submit" value="Envoyer" /> </p>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 $("#submit").click(function() { var hasError = false; var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/; var emailToVal = $("#votremail").val(); if(emailToVal == '') { $("#votremail").after('<p class="erreur">Votre e-mail n\'est pas valide.</p>'); hasError = true; } else if(!emailReg.test(emailToVal)) { $("#votremail").after('<p class="erreur">Votre e-mail n\'est pas valide.</p>'); hasError = true; } var messageVal = $("#message").val(); if(messageVal == '') { $("#message").after('<p class="erreur">Veuillez entrer un message !</p>'); hasError = true; } if(hasError == false) { $(this).hide(); $.post("includes/send_mail.php", { emailTo: emailToVal, message: messageVal }, function(data){ $("#submit").before('<p class="info">Votre message a bien été envoyé ! Je vous répondrai le plus rapidement possible.</p>'); (".erreur").hide(); } ); (".info").fadeOut("8000"); } return false; });
Envoi du mail :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <?php $mailTo = "moi@moi.moi"; $mailFrom = $_POST['emailToVal']; $subject = "Contact"; $message = $_POST['message']; mail($mailTo, $subject, $message, "From: ".$mailFrom); ?>
Si vous pouviez m'aider, je vous en serait très reconnaissant.
Merci.
Partager