[PHP] Mail avec fichiers joints, corrompus !
vensatis
Messages postés
16
Date d'inscription
Statut
Membre
Dernière intervention
-
kilian Messages postés 8732 Date d'inscription Statut Modérateur Dernière intervention -
kilian Messages postés 8732 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Je suis depuis quelques heures sur un script qui doit envoyer un mail avec un fichier joint. Tout marche a merveille, je reçois le fichier avec la bonne extension mais lorsque je désire l'ouvrir, impossible !
Et cela quelque soit le fichier, Word, Image, Texte... En local ou en ligne... Incompréhensible.
Si vous désirez voir la source n'hésitez pas.
Je suis depuis quelques heures sur un script qui doit envoyer un mail avec un fichier joint. Tout marche a merveille, je reçois le fichier avec la bonne extension mais lorsque je désire l'ouvrir, impossible !
Et cela quelque soit le fichier, Word, Image, Texte... En local ou en ligne... Incompréhensible.
Si vous désirez voir la source n'hésitez pas.
A voir également:
- [PHP] Mail avec fichiers joints, corrompus !
- Publipostage mail - Accueil - Word
- Windows live mail - Télécharger - Mail
- Renommer des fichiers en masse - Guide
- Fichiers epub - Guide
- Wetransfer gratuit fichiers lourd - Guide
5 réponses
Et bien en faite cela semble venir de mon serveur SMTP. J'ai testé en ligne, il marche correctement avec pas mal de fichiers mais il ne supporte pas les .doc...
Voilà une partie de la source :
Voilà une partie de la source :
if (is_uploaded_file($fileatt)) { // Read the file to be attached ('rb' = read binary) $file = fopen($fileatt,'rb'); $data = fread($file,filesize($fileatt)); fclose($file); // Generate a boundary string $semi_rand = md5(time()); $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x"; // Add the headers for a file attachment $headers .= "\nMIME-Version: 1.0\n" . "Content-Type: multipart/mixed;\n" . " boundary=\"{$mime_boundary}\""; // Add a multipart boundary above the plain message $message = "This is a multi-part message in MIME format.\n\n" . "--{$mime_boundary}\n" . "Content-Type: text/plain; charset=\"iso-8859-1\"\n" . "Content-Transfer-Encoding: 7bit\n\n" . $message . "\n\n"; // Base64 encode the file data $data = chunk_split(base64_encode($data)); // Add file attachment to the message $message .= "--{$mime_boundary}\n" . "Content-Type: {$fileatt_type};\n" . " name=\"{$fileatt_name}\"\n" . "Content-Disposition: attachment;\n" . " filename=\"{$fileatt_name}\"\n" . "Content-Transfer-Encoding: base64\n\n" . $data . "\n\n" . "--{$mime_boundary}--\n"; }
Ah je sais pas, la source n'est pas de moi. Elle fonctionne correctement cependant. Sauf pour les fichiers word.
Je vais autoriser uniquement le .zip et sa ira hein ! :)
Merci à toi
Je vais autoriser uniquement le .zip et sa ira hein ! :)
Merci à toi
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question