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
|
/**
* Permet la creation et l'envoie du mail
* Variable $destinataire permet de spécifier le destinataire du mail
* Variable $sujet permet de spécifier le sujet du mail
* Variable $messtxt permet de spécifier le message version texte du mail
* Variable $messhtml permet de spécifier le message version html du mail
* Variable $from permet de spécifier l'expediteur du mail
* Variable $piece_jointe = array() permet de spécifier les piéce jointe a inclure au mail
**/
function envoie_mail($destinataire, $sujet , $messtxt, $messhtml , $from ,$piece_jointe = NULL)
{
$frontiere = '455g45d45gdg' . md5(uniqid(mt_rand()));
$frontierebis = '455g45d45gdg' . md5(uniqid(mt_rand()));
$entete = "Reply-to: $from\n";
$entete .= "From:$from\n";
$entete .= "Date: ".date("l j F Y, G:i")."\n";
$entete .= "MIME-Version: 1.0\n";
if($piece_jointe != NULL)
{
$entete .= 'Content-Type: multipart/related; boundary="'.$frontiere.'"';
}
$msg .= "--".$frontiere."\n";
if($piece_jointe != NULL && is_array($piece_jointe))
{
$msg .= 'Content-Type: multipart/alternative; boundary="'.$frontierebis.'"';
}
else
{
$entete .= 'Content-Type: multipart/alternative; boundary="'.$frontierebis.'"';
}
//Le message en texte simple pour les navigateurs qui
//n'acceptent pas le HTML
$msg.= "This is a multi-part message in MIME format.\n\n";
$msg .= "--".$frontierebis."\n";
$msg .= 'Content-Type: text/plain; charset="iso-8859-1"'."\n";
$msg .= "Content-Transfer-Encoding: 8bit\n\n";
$msg .= $messtxt."\n\n";
//le message en html original
$msg .= "--".$frontierebis."\n";
$msg .= "Content-Type: text/html; charset=\"iso-8859-1\"\n";
$msg .= "Content-Transfer-Encoding: 8bit\n\n";
$msg .= "
<html>
<head>
<title>Un titre ici</title>
<style type='text/css'>
body {font:12px Arial; color:#000;}
</style>
</head>
<body>
".$messhtml."
</body>
</html>\n\n";
$msg .= "--".$frontierebis."--\n";
//PIECE JOINTE
if($piece_jointe != NULL && is_array($piece_jointe))
{
foreach($piece_jointe as $piece)
{
$piece = explode('[@jointure@]',$piece);
$msg .= "--".$frontiere."\n";
$msg .= 'Content-Type: ';
if(mime_content_type($piece['0'].$piece['1']) == ''){ $msg .= 'x-unknown/attachment'; }else{ $msg .= mime_content_type($piece['0'].$piece['1']); }
$msg .= '; name="'.$piece['1'].'"'."\n";
$msg .= 'Content-Transfer-Encoding: base64'."\n";
if($piece['2'] == '1')
{
$msg .= 'Content-ID: <'.$piece['1'].'>'."\n\n";
}
else
{
$msg .= 'Content-Disposition:attachement; filename="'.$piece['1'].'"'."\n\n";
}
$msg .= chunk_split(base64_encode(file_get_contents($piece['0'].$piece['1'])))."\n";
}
}
if($piece_jointe != NULL && is_array($piece_jointe))
{
$msg .= "--".$frontiere."--\n";
}
if(mail($destinataire, $sujet, $msg, $entete))
{
return true;
}
else
{
return false;
}
} |
Partager