php mail image

Solutions on MaxInterview for php mail image by the best coders in the world

showing results for - "php mail image"
Zeph
04 Oct 2020
1<?php
2//----------------------------------
3// Construction de l'entête
4//----------------------------------
5$delimiteur = "-----=".md5(uniqid(rand()));
6
7$entete = "MIME-Version: 1.0\r\n";
8$entete .= "Content-Type: multipart/related; boundary=\"$delimiteur\"\r\n";
9$entete .= "\r\n";
10
11//--------------------------------------------------
12// Construction du message proprement dit
13//--------------------------------------------------
14
15$msg = "Je vous informe que ceci est un message au format MIME 1.0 multipart/mixed.\r\n";
16
17//---------------------------------
18// 1ère partie du message
19// Le code HTML
20//---------------------------------
21$msg .= "--$delimiteur\r\n";
22$msg .= "Content-Type: text/html; charset=\"utf-8\"\r\n";
23$msg .= "Content-Transfer-Encoding:8bit\r\n";
24$msg .= "\r\n";
25$msg .= "<html><body><h1>Email HTML avec 2 images</h1>";
26$msg .= "Image 1:<img src=\"cid:image1\"><br />";
27$msg .= "Image 2:<img src=\"cid:image2\"><br /></body></html>\r\n";
28$msg .= "\r\n";
29
30//---------------------------------
31// 2nde partie du message
32// Le 1er fichier (inline)
33//---------------------------------
34$fichier = 'monfichier.jpg';
35$fp      = fopen($fichier, "rb");
36$fichierattache = fread($fp, filesize($fichier));
37fclose($fp);
38$fichierattache = chunk_split(base64_encode($fichierattache));
39
40$msg .= "--$delimiteur\r\n";
41$msg .= "Content-Type: application/octet-stream; name=\"$fichier\"\r\n";
42$msg .= "Content-Transfer-Encoding: base64\r\n";
43$msg .= "Content-ID: <image1>\r\n";
44$msg .= "\r\n";
45$msg .= $fichierattache . "\r\n";
46$msg .= "\r\n\r\n";
47
48//---------------------------------
49// 3ème partie du message
50// Le 2ème fichier (attachment)
51//---------------------------------
52$fichier = 'monfichier2.jpg';
53$fp      = fopen($fichier, "rb");
54$fichierattache = fread($fp, filesize($fichier));
55fclose($fp);
56$fichierattache = chunk_split(base64_encode($fichierattache));
57
58$msg .= "--$delimiteur\r\n";
59$msg .= "Content-Type: application/octet-stream; name=\"$fichier\"\r\n";
60$msg .= "Content-Transfer-Encoding: base64\r\n";
61$msg .= "Content-ID: <image2>\r\n";
62$msg .= "\r\n";
63$msg .= $fichierattache . "\r\n";
64$msg .= "\r\n\r\n";
65
66$msg .= "--$delimiteur\r\n";
67
68$destinataire = 'testemail@toutestfacile.com';
69$expediteur   = 'moi@monsite.com';
70$reponse      = $expediteur;
71echo "Ce script envoie un mail au format HTML avec 2 images à $destinataire";
72mail($destinataire,
73     'Email HTML avec 2 images',
74     $msg,
75     "Reply-to: $reponse\r\nFrom: $expediteur\r\n".$entete);
76?>