Bonjour,
Suite au tutoriel "envoyer un mail en PHP", j'ai réaliser mon formulaire en prenant exemple sur ce tutoriel. Mais lorsque je rempli le formulaire et l'envoi, je ne reçoit pas de mail.
Donc j'aurais besoin de votre aide pour savoir ce qu'il se passe.
Voici le code du formulaire
Code html : 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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77 <form method="post" action="traitement.php"> <fieldset> <!-- balise permettant de faire un encadrement du formulaire --> <legend>Formulaire de contact</legend> <br /> <input type="hidden" name="sujet" value="Vous avez un nouveau message" /> <label for="pseudo" class="label_cote">Votre pseudo * : </label><input type="text" name="pseudo" id="pseudo" size="30" maxlength="15" /> <br /><br /> <label for="email" class="label_cote">Votre email * : </label><input type="text" name="email" id="email" /> <br /><br /> <label for="objet_mail" class="label_cote">Objet * : </label> <select name="objet" id="objet"> <option value="sans" selected="selected" disabled="disabled">Sélectionner un objet</option> <option value="site" <?php if (!isset($_POST['objet']) || $_POST['objet'] == 'A propos du site') { echo ' selected="selected"'; } ?>>A propos du site</option> <option value="logiciel" <?php if (!isset($_POST['objet']) || $_POST['objet'] == 'Proposer un logiciel') { echo ' selected="selected"'; } ?>>Proposer un logiciel</option> <option value="tutoriel" <?php if (!isset($_POST['objet']) || $_POST['objet'] == 'Proposer un tutoriel') { echo ' selected="selected"'; } ?>>Proposer un tutoriel</option> <option value="publicite" <?php if (!isset($_POST['objet']) || $_POST['objet'] == 'Publicite') { echo ' selected="selected"'; } ?>>Publicité</option> <option value="partenariat" <?php if (!isset($_POST['objet']) || $_POST['objet'] == 'Partenariat') { echo ' selected="selected"'; } ?>>Partenariat</option> <option value="news" <?php if (!isset($_POST['objet']) || $_POST['objet'] == 'News') { echo ' selected="selected"'; } ?>>News</option> <option value="suggestion"<?php if (!isset($_POST['objet']) || $_POST['objet'] == 'Suggestion') { echo ' selected="selected"'; } ?>>Suggestions</option> <option value="lien_mort" <?php if (!isset($_POST['objet']) || $_POST['objet'] == 'Lien mort') { echo ' selected="selected"'; } ?>>Lien mort</option> </select> <br /><br /> <label for="sujet_mail" class="label_cote">Sujet * : </label><input type="text" name="sujet_mail" id="sujet_mail" size="30" /> <br /><br /> <label for="url_site" class="label_cote">URL du site : </label><input type"text" name="url_site" size="30" /> <br /><br /> <label for="message" class="label_cote">Message * : </label><br /> <textarea name="message" id="message" rows="10" cols="48"></textarea> <br /><br /> <center><input type="submit" /> <input type="reset" /></center> <br /> <p> * Champs obligatoire </p> </fieldset> </form> <!-- fin du formulaire de contact -->
et voici le code de ma page traitement.php
Code php : 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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108 <?php /* Si le formulaire est envoyé alors on fait les traitements */ if (isset($_POST['envoyer'])) { /* on recupere les valeurs des champs du formulaire */ if (get_magic_quotes_gpc()) { $sujet = stripslashes(trim($_POST['sujet'])); $pseudo = stripslashes(trim($_POST['pseudo'])); $email = stripslashes(trim($_POST['email'])); $objet = stripslashes(trim($_POST['objet'])); $sujet_mail = stripslashes(trim($_POST['sujet_mail'])); $url_site = stripslashes(trim($_POST['url_site'])); $message = stripslashes(trim($_POST['message'])); } else { $sujet = trim($_POST['sujet']); $pseudo = trim($_POST['pseudo']); $email = trim($_POST['email']); $objet = trim($_POST['objet']); $sujet_mail = trim($_POST['sujet_mail']); $url_site = trim($_POST['url_site']); $message = trim($_POST['message']); } /* on vérifie si le format d'une adresse e-mail est correct */ $regex_mail = '/^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i'; /* on vérifie qu'aucun en-tête n'est inséré dans nos champs */ $regex_head = '/[\n\r]/'; /* Si le formulaire n'est pas posté de notre site on renvoie * vers la page d'accueil */ if($_SERVER['HTTP_REFERER'] != 'http://logicielonline.multi-heberg.net/contact.php') { header('Location: http://logicielonline.multi-heberg.net/'); } /* On vérifie que tous les champs sont remplis */ elseif (empty($pseudo) || empty($email) || empty($objet) || empty($sujet_mail) || empty($message)) { $alert = 'Tous les champs doivent être renseignés'; } /* On vérifie que le format de l'e-mail est correct */ elseif (!preg_match($regex_mail, $email)) { $alert = 'L\'adresse '.$email.' n\'est pas valide'; } /* On vérifie qu'il n'y a aucun header dans les champs */ elseif (preg_match($regex_head, $email) || preg_match($regex_head, $pseudo) || preg_match($regex_head, $sujet_mail) || preg_match($regex_head, $url_site)) { $alert = 'En-têtes interdites dans les champs du formulaire'; } /* Si aucun problème et aucun cookie créé, on construit le message et on envoie l'e-mail */ elseif (!isset($_COOKIE['sent'])) { /* Destinataire */ $to = 'logicielonline@gmail.com'; /* Construction du message */ $msg = 'Bonjour,'."\r\n\r\n"; $msg .= 'Ce mail a été envoyé depuis Logiciel online par '.$pseudo."\r\n\r\n"; $msg .= 'E-mail du contact : '.$email."\r\n"; $msg .= 'Objet : '.$objet."\r\n"; $msg .= 'Sujet du message : '.$sujet_mail."\r\n"; $msg .= 'Url du site : '.$url_site."\r\n"; $msg .= 'Voici le message qui vous est adressé :'."\r\n"; $msg .= '***************************'."\r\n"; $msg .= $message."\r\n"; $msg .= '***************************'."\r\n"; /* En-têtes de l'e-mail */ $headers = 'From: '.$pseudo.' <'.$email.'>'."\r\n\r\n"; /* Envoi de l'e-mail */ if (mail($to, $sujet, $msg, $headers)) { $alert = 'E-mail envoyé avec succès'; /* On créé un cookie de courte durée (ici 120 secondes) pour éviter de * renvoyer un mail en rafraichissant la page */ setcookie("sent", "1", time() + 120); /* On détruit la variable $_POST */ unset($_POST); } else { $alert = 'Erreur d\'envoi de l\'e-mail'; } } /* Cas où le cookie est créé et que la page est rafraichie, on détruit la variable $_POST */ else { unset($_POST); } } ?>
Merci d'avance au personne qui me répondront.
Partager