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
|
function AjouterFichierJoint($lnom,$lprenom,$lemail,$header)
{
// On choisi généralement de construire une frontière générée aleatoirement
// comme suit. (REM: je n'en connais pas la raison profonde)
$boundary = "-----=".md5(uniqid(rand()));
// Version du format MIME utilisé
$header .= "MIME-Version: 1.0\r\n";
// Type de contenu. Ici plusieurs parties de type different "multipart/mixed"
$header .= "Content-Type: multipart/mixed; boundary=\"$boundary\"\r\n";
$header .= "\r\n";
$msg = "Je vous informe que ceci est un message au format MIME 1.0 multipart/mixed.\r\n";
// Chaque partie du message est séparé par une frontière
$msg .= "--$boundary\r\n";
// Et pour chaque partie on en indique le type
$msg .= "Content-Type: text/plain; charset=\"iso-8859-1\"\r\n";
// Et comment il sera codé
$msg .= "Content-Transfer-Encoding:8bit\r\n";
// Il est indispensable d'introduire une ligne vide entre l'entête et le texte
$msg .= "\r\n";
// Enfin, on peut écrire le texte de la 1ère partie
$d =date("d-m-Y"); //date du jour
$h = date("H:i"); //heure d el'inscription
$msg .= "le $d à $h : $lnom $lprenom";
$msg .= "\r\n";
// Tout d'abord lire le contenu du fichier
$file = "/securite/inscription.txt";
$fp = fopen($file, "rb"); // b c'est pour les windowsiens
$attachment = fread($fp, filesize($file));
fclose($fp);
$attachment = chunk_split(base64_encode($attachment));
// Ne pas oublier que chaque partie du message est séparé par une frontière
$msg .= "--$boundary\r\n";
// Et pour chaque partie on en indique le type
$msg .= "Content-Type: image/gif; name=\"$file\"\r\n";
// Et comment il sera codé
$msg .= "Content-Transfer-Encoding: base64\r\n";
// fichier si possible affiché dans le corps du mail
$msg .= "Content-Disposition: inline; filename=\"$file\"\r\n";
// Il est indispensable d'introduire une ligne vide entre l'entête et le texte
$msg .= "\r\n";
// C'est ici que l'on insère le code du fichier lu
$msg .= $attachment . "\r\n";
$msg .= "\r\n\r\n";
// voilà, on indique la fin par une nouvelle frontière
$msg .= "--$boundary--\r\n";
//Création du tableau à retourner comme résultat.
$temp['message'] = $msg;
$temp['headers'] = $headers;
return $temp;
}
function EnvoyerEmail($ln,$lpr,$lm)
{
// Declaration des entetes
$entetes = 'From: vertou-volleyball@neuf.fr'."\n\r" ; //origine du mail
$entetes .= 'Reply-To:vertou-volleyball@neuf.fr'."\n\r";
//Définition des variables de configuration de la fonction mail manquantes
$to = 'vertou-volleyball@neuf.fr'; //destinataire du mail
$sujet = 'Nouvelle inscription au VVB enregistrée !';
//création du mesage et attachement du fichier à joindre.
$tp = AjouterFichierJoint($ln,$lpr,$lm,$entetes);
//Envoie de l'email
$message = $tp['message'];
$head =$tp['headers'];
//$message = 'on teste ';
$rep = mail($to,$sujet,$message,$entetes);
return $rep;
} |
Partager