Envoie de fichier joint par e-mail

  • Auteur de la discussion Auteur de la discussion mic54800
  • Date de début Date de début
WRInaute discret
Bonjour,
J'utilise un script PHP trouve sur un site afin de joindre un fichier par mail.
Le problème est que le script joint le fichier sans tenir compte des retours à la ligne (ce qui s'avère plutôt embêtant étant donné qu'il s'agit d'un fichier contenant le contenu de ma BDD).
Comment pourrais-je faire pour que ce script prenne en compte les retour à la ligne ?

(Le fichier envoyé est un fichier .txt)

Code:
function mailfichier($from, $to, $subject, $body, $nomfichier)
{
	// generation du separateur, une chaine aleatoire fait l'affaire
	$bound = '------------'.md5(uniqid('mic'));

	$entete = 'From: '.$from."\n"
	.'MIME-Version: 1.0'."\n"
	.'Content-Type: multipart/mixed;'."\n"
	.' boundary="'.$bound.'"';

	$body = 'This is a multi-part message in MIME format.'."\n"
	.'--'.$bound."\n"
	.'Content-Type: text/plain; charset=ISO-8859-1'."\n"
	.'Content-Transfer-Encoding: 7bit'."\n\n"
	.$body
	."\n\n"
	.'--'.$bound."\n"
	.'Content-Type: text/plain;'."\n".' name="'.basename($nomfichier).'"'."\n"
	.'Content-Transfer-Encoding: base64'."\n"
	.'Content-Disposition: attachment;'."\n".' filename="'.basename($nomfichier).'"'."\n\n"
	.chunk_split(base64_encode(file_get_contents($nomfichier)))
	.'--'.$bound.'--'."\n";

	return @mail($to, $subject, $body, $entete);
}

Je vous remercie par avance pour votre aide !

Mic54800
 
WRInaute accro
Quand tu ouvres ton fichier texte avant de l'envoyer par mail, est-ce que les retours à la ligne te semble ok ?

Je pense que le souci vient du fichier, pas du script d'envoi, qui lui n'a aucune raison de modifier ton fichier.
 
WRInaute discret
Le fichier .txt est ok, les retours à la ligne sont fait, il n'y a rien à dire dessus.
Le problème vient bel et bien du script d'envoi du fichier par e-mail ...
Tu peux tenter par toi même en essayant d'envoyer un fichier factice ..
Aurais-tu une idée du problème ?
 
WRInaute accro
Je ne code plus mes envois d'email de cette façon depuis pas mal de temps déjà. J'utilise Phpmailer qui fait ça très bien pour moi :-)
 
Discussions similaires
Haut