Image jointe dans mail
Posté : 23 déc. 2006, 21:06
Bonjour,
Je veux envoyer un mail en html avec une photo mais la photo ne peux être lue chez le destinataire.
Est ce un pb de chemin ??
Merci pour votre aide
Je veux envoyer un mail en html avec une photo mais la photo ne peux être lue chez le destinataire.
Est ce un pb de chemin ??
Merci pour votre aide
<html>
<body>
<center>
<?php
include ("../Connexion/connection_news.php");
//$headers="from:$votremail";
// on génère une frontière
$boundary = '-----=' . md5( uniqid ( rand() ) );
// on génère un identifiant aléatoire pour le fichier
$file_id = md5( uniqid ( rand() ) ) . $_SERVER['SERVER_NAME'];
// on va maintenant lire le fichier et l'encoder
//$path = 'chemin/fichier.gif'; // chemin vers le fichier
$path = 'C:/Henri/Photos/Copie_CD/Groenland/Carte_Noel.jpg';
$fp = fopen($path, 'rb');
$content = fread($fp, filesize($path));
fclose($fp);
$content_encode = chunk_split(base64_encode($content));
$headers = "From: \"Test\"<[email protected]>\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: multipart/related; boundary=\"$boundary\"";
$message = "Ceci est un message au format MIME 1.0 multipart/mixed.\n\n";
$message .= "--" . $boundary . "\n";
$message .= "Content-Type: text/html; charset=\"iso-8859-1\"\n";
$message .= "Content-Transfer-Encoding: 8bit\n\n";
$message .= "<html><body><p align=center>Bonjour, <br><br></p>";
$message .= "<p align=center>Voila l'image que tu m'as demandée :<br></p>";
$message .= "<p align=center><img src=\"cid:$file_id\" alt=\"l'image demandée\"><br></p>";
$message .= "<p align=center><br>@+</p>";
$message .= "\n\n";
$message .= "--" . $boundary . "\n";
$message .= "Content-Type: image/jpg; name=\"Carte_Noel.jpg\"\n";
$message .= "Content-Transfer-Encoding: base64\n";
$message .= "Content-ID: <$file_id>\n\n";
$message .= $content_encode . "\n";
$message .= "\n\n";
$message .= "--" . $boundary . "--\n";
mail('[email protected]', 'le fichier demandé', $message, $headers)
?>
</body>
</html>