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 ?

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&eacute;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>
et action_mail2.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
 
<?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('&lt;','&gt;'),array('<','>'), $msg);
$msg = str_replace(array('&amp;lt;','&amp;gt'),array('&lt;','&gt;'), $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é"; 
 
     }
 
}
?>