Bonjour,
pour tester, j'ai mis un script identique chez 1&1 et chez Free pour envoyer des mails avec PHPMailer. Autant ça marche chez 1&1, autant ça ne marche pas chez Free : est-ce rhédibitoire chez Free ou cela viendrait de mon code ?
et action_mail2.php :
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
78
79
80
81 <h1>fct_mail</h1> <form action="action_mail2.php" method="post" enctype="application/x-www-form-urlencoded"> <table id="pane"> <tbody> <tr> <td><label class="label">Votre adresse mail 1: </label> </td> <td class="champs"> <input name="mail1" maxlength="200" value="" size="50" type="text"> </td> <td></td> </tr> <tr> <td><label class="label">Votre adresse mail 2: </label> </td> <td class="champs"> <input name="mail2" maxlength="200" value="" size="50" type="text"> </td> <td></td> </tr> <tr> <td><label class="label">Votre adresse mail 3: </label> </td> <td class="champs"> <input name="mail3" maxlength="200" value="" size="50" type="text"> </td> <td></td> </tr> <tr> <td> <label class="label">Nom: </label> </td> <td class="champs"> <input name="nom" maxlength="200" value="" size="39" type="text"> </td> <td></td> </tr> <tr> <td> <label class="label">Prénom</label> </td> <td class="champs"> <input name="prenom" maxlength="200" value="" size="39" type="text"> </td> <td></td> </tr> <tr> <td> <label class="label">message</label> </td> <td class="champs"> <input name="msg" maxlength="200" value="" size="39" type="text"> </td> <td></td> </tr> <tr> <td></td> <td class="champs"> <div class="boutons"> <input name="valider" value="Envoyer" type="submit"> <input name="raz" value="Effacer" type="reset"> </div> </td> <td></td> </tr> </tbody> </table> </form>
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 <?php $sortie=0; header('Content-Type: text/html; charset=utf-8'); if (isset($_POST['valider'])) { //------------- lecture des différents champs du formulaire if (isset($_POST['mail1'])) { $mail1=$_POST['mail1']; } if (isset($_POST['mail2'])) { $mail2=$_POST['mail2']; } if (isset($_POST['mail3'])) { $mail3=$_POST['mail3']; } if (isset($_POST['nom'])) { $nom=$_POST['nom']; } if (isset($_POST['prenom'])) { $prenom=$_POST['prenom']; } if (isset($_POST['msg'])) { $msg=$_POST['msg']; } $cond=(!isset($_POST['mail1']))||(!isset($_POST['mail2']))||(!isset($_POST['mail3']))||(!isset($_POST['nom']))||(!isset($_POST['prenom']))||(!isset($_POST['msg'])); $sortie=($cond)? 1 : 0; if ($sortie==1) echo "tous les champs sont obligatoires<br/>"; if((!($sortie))) //S'il n'y a pas d'erreur et que tous les champs sont remplis, on continue { /* envoi du mail avec phpmailer */ require("phpmailer/class.phpmailer.php"); $mail = new PHPMailer(); $destinataire=[$mail1,$mail2,$mail3]; foreach($destinataire as $dest) {$mail->AddAddress($dest);} $mail->SetLanguage("en",'phpmailer/language/'); $mail->From = $mail1; $mail->Subject = "testééé"; //pour tester les caractères accentués // construction msg //------------------- $msg ="Message envoyé par ".$prenom." ".$nom.":".$msg; $msg = htmlentities($msg,ENT_NOQUOTES,'UTF-8',false); $msg = str_replace(array('<','>'),array('<','>'), $msg); $msg = str_replace(array('&lt;','&gt'),array('<','>'), $msg); //fin construction msg //------------------------ $mail->CharSet = 'UTF-8'; $mail->ContentType ='text/html'; $mail->FromName=$mail; $mail->Body = $msg; if(!$mail->Send()) { echo 'Message was not sent.'; echo 'Mailer error: ' . $mail->ErrorInfo; } else echo "mail envoyé"; } } ?>
Partager