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
|
//variable de fond
$fond = "images/fond.jpg";
//on récupère la date du jour
$date_jour=date("Y-m-d");
//on récupère les 10 derniers événements
$sql="SELECT numCat,nomEvt,numEvt,descriptifEvt,datEvtDebut FROM evenement WHERE statutEvt='actif' AND datEvtDebut>='$date_jour' ORDER BY datEvtDebut LIMIT 0,10";
$result=mysql_query($sql) or die ("problème requete sql".mysql_error());
$header ="From: test<test@test.eu>\n";
$destinataire="test@test.fr";
$objet="test de mail";
//frontière
$boundary = "-----=".md5(uniqid(rand()));
//
// Version du format MIME utilisé
$header .= "MIME-Version: 1.0\n";
// Type de contenu. Ici plusieurs parties de type different "multipart/ALTERNATIVE"
// Avec un frontière définie par $boundary
$header .= "Content-Type: multipart/Alternative; \n boundary=\"$boundary\"\n\n";
$header .= "\n";
$message = "This is a multi-part message in MIME format.\n";
$message .= "Ceci est un message au format MIME.\n";
$message .= "--$boundary\n";
$message .= 'Content-Type: text/html; charset="iso-8859-1"'."\n";
$message .= 'Content-Transfer-Encoding: 8bit'."\n\n";
$message.="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\"><HTML><HEAD><TITLE></TITLE><META http-equiv=3DContent-Type content=3D\"text/html; charset=3Diso-8859-1\">";
$message .= '<STYLE>BODY { BACKGROUND-POSITION: left top; MARGIN-TOP: 80px; FONT-SIZE: 12pt; MARGIN-LEFT: 175px; COLOR: #000000; BACKGROUND-REPEAT: no-repeat; FONT-FAMILY: Times New Roman; background=cid:fond;}';
$message .= '</STYLE><META content=3D"MSHTML 5.50.4134.600" name=3DGENERATOR></head>';
$message.="<body>
<table width='700'><tr><td>Les 10 prochains évènements de sortons.eu</td></tr><tr><td> </td></tr>";
while($data=mysql_fetch_array($result)){
$num_cat=$data['numCat'];
$nom_evt=$data['nomEvt'];
$num_evt=$data['numEvt'];
$descriptif=$data['descriptifEvt'];
$date=$data['datEvtDebut'];
//mise en forme de la date
$table_date=split("-",$date);
switch($table_date[1]){
case "01" : $mois='Janvier';break;
case "02" : $mois='Février';break;
case "03" : $mois='Mars';break;
case "04" : $mois='Avril';break;
case "05" : $mois='Mais';break;
case "06" : $mois='Juin';break;
case "07" : $mois='Juillet';break;
case "08" : $mois='Août';break;
case "09" : $mois='Septembre';break;
case "10" : $mois='Octobre';break;
case "11" : $mois='Novembre';break;
case "12" : $mois='Décembre';break;
}
$date=$table_date[2]." ".$mois." ".$table_date[0];
//on récupère la catégorie
$sql1="SELECT nomCat FROM categorie WHERE numCat='".$num_cat."'";
$result1=mysql_query($sql1) or die ("problème requete sql1".mysql_error());
$data1=mysql_fetch_array($result1);
$categorie=$data1['nomCat'];
$message.="<tr><td>$categorie - $nom_evt</td></tr><tr><td>$date</td></tr><tr><td> </td></tr><tr><td>$descriptif</td></tr><tr><td><hr></td></tr>";
}
$message.="</table></body></html>";
// ---------------------------------
// 2nde partie du message
// Le fichier FOND
// ---------------------------------
// Tout d'abord lire le contenu du fichier
$fp = fopen($fond, "rb"); // b c'est pour les windowsiens (binary)
$attachment = fread($fp, filesize($fond));
fclose($fp);
// puis convertir le contenu du fichier en une chaîne de caractères
// conforme au format RFC 2045 (lignes de 76 caractères)
$attachment = chunk_split(base64_encode($attachment));
// Ne pas oublier que chaque partie du message est séparé par une frontière
$message .= "--$boundary\n";
// Et pour chaque partie on en indique le type
$message .= "Content-Type: image/jpg; name=\"$fond\"\n";
// Et comment il sera codé
$message .= "Content-Transfer-Encoding: base64\n";
// -----ICI L'ASTUCE POUR RECUPERER LA PIECE JOINTE ! (sinon ce serait une PJ ordinaire
$message .= "Content-ID: <fond>\n";
// Il est indispensable d'introduire une ligne vide entre l'entête et le texte
$message .= "\n";
// C'est ici que l'on insère le code du fichier lu
$message .= $attachment . "\n";
$message .= "\n\n";
$message .= "--$boundary--\n";
@mail($destinataire,$objet,$message,$header); |
Partager