envoi mail avec piece jointe
Bonjour à tous,
depuis quelques jours j'essaie d'envoyer des mails avec une pièce jointe.
Sans résultat malgré mes recherches sur le net et divers essai.
J'ai trouvé pas mal de code mais impossible de les faire fonctionner.
L'envoi du texte(html) fonctionne.
Voici mon code....le code que j'essaie d'adapter à mes besoins.
La pièce jointe que j'essaie d'envoyer est un jpg qui ce trouve au même emplacement que le fichier ci-dessous.
Merci d'avance.
Code:
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
| <?php
include("../Template/Connect/Connexionbd.php");
$Css =' body{ margin: 0;padding: 0;font-family: Georgia, "Times New Roman", Times, serif;} ';
$Texte = 'Mon texte ';
echo '<a href="admin/admin_menu.php">retour Menu</a><br><br>';
//-sujet
$titre = 'NewsLetter - ';
$sujet = utf8_decode( $titre.'Mon Sujet');
// Recup Nom & Mail expediteur
$Res_Exp = mysql_query ("select * from User_Exp");
$Nom_Exp = mysql_result($Res_Exp,0,"Nom_Exp");
$Mail_Exp = mysql_result($Res_Exp,0,"Mail_Exp");
// Recup Destinataire
$sql = "SELECT * FROM User_Dest";
$req = mysql_query($sql) or die('Erreur SQL !<br/>'.$sql.'<br/>'.mysql_error());
while($Dest=mysql_fetch_assoc($req))
{
// destinataire
$destinataire = $Dest["Mail_Dest"];
//$email_reply='email_de_reponse@fai.fr';
// message texte
$message_texte='Bonjour,'."\n\n".'Voici un message au format texte';
// message html
$message_html='<html><head> <title>'.$sujet.'</title><style type="text/css" media="screen">'.$Css.' </style></head><body>'.utf8_decode($Texte).'</body></html>';
$frontiere = '-----=' . md5(uniqid(mt_rand()));
//Nom Expediteur - Mail Expediteur
$headers = 'From: '.$Nom_Exp.' <'.$Mail_Exp.'>'."\n";
//Mail reponse
//$headers .= 'Return-Path: <'.$email_reply.'>'."\n";
$headers .= 'MIME-Version: 1.0'."\n";
$headers .= 'Content-Type: multipart/mixed; boundary="'.$frontiere.'"';
//MESSAGE TEXTE
$message = 'This is a multi-part message in MIME format.'."\n\n";
//-----------------------------------------------\\
$message .= '--'.$frontiere."\n";
$message .= 'Content-Type: text/plain; charset="iso-8859-1"'."\n";
$message .= 'Content-Transfer-Encoding: 8bit'."\n\n";
$message .= $message_texte."\n\n";
//MESSAGE HTML
$message .= '--'.$frontiere."\n";
$message .= 'Content-Type: text/html; charset="iso-8859-1"'."\n";
$message .= 'Content-Transfer-Encoding: 8bit'."\n\n";
$message .= $message_html."\n\n";
//-----------------------------------------------\\
$message .= '--'.$frontiere.'--'."\n";
//PIECE JOINTE
$message .= 'Content-Type: image/jpeg; name="aff1.jpg"'."\n";
$message .= 'Content-Transfer-Encoding: base64'."\n";
$message .= 'Content-Disposition:attachement; filename="aff1.jpg"'."\n\n";
$message .= chunk_split(base64_encode(file_get_contents('aff1.jpg')))."\n";
if(mail($destinataire,$sujet,$message,$headers))
{echo $destinataire." OK <br/>";}
else
{echo $destinataire." NG <br/>";}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
</head>
<body>
</body>
</html> |