Bonjour

j'utilise la fonction php mail pour l'envoi d'un mail depuis mon site. je recois le mail avec la pièce jointe mais la pièce jointe est vide, c'est à dire, qu'elle ne contient rien du tout

Voici mon code :

$file_name = $_FILES['file']['name'];
$message = "hello hello";
$boundary = "_" . md5(uniqid(rand()));

$attached_file = file_get_contents($file_name); //file name ie: ./image.jpg 
$attached_file = chunk_split(base64_encode($attached_file));

$attached = "\n\n" . "--" . $boundary . "\nContent-Type: application; name=\"$file_name\"\r\nContent-Transfer-Encoding: base64\r\nContent-Disposition: attachment; filename=\"$file_name\"\r\n\n" . $attached_file . "--" . $boundary . "--";

$headers = "From: xxx@xx.com \r\n";
$headers .= "MIME-Version: 1.0\r\nContent-Type: multipart/mixed; boundary=\"$boundary\"\r\n";

$body = "--" . $boundary . "\nContent-Type: text/plain; charset=ISO-8859-1\r\n\n" . $message . $attached;

@mail("xxx@xxx.com", "a la place du subject", $body, $headers);


Je sais plus ce qui se passe.Quelqu'un aurait il une idée?

Merci
Hello,

J'étais tombé sur la même erreur il y a quelques temps. Certaines messageries mails ne recevaient pas mes PJ, alors que d'autres oui. J'avais fini par utiliser une classe PHP pour gérer mes mails, et tout à bien fonctionner après ça!

Tu trouver le GitHub de la classe ici.

Bye,
Yokii