Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/01/2011, 10h39   #1
Futur Membre du Club
 
himotep himotep
Inscription : juillet 2010
Messages : 67
Détails du profil
Informations personnelles :
Nom : himotep himotep

Informations forums :
Inscription : juillet 2010
Messages : 67
Points : 16
Points : 16
Par défaut mail pièce jointe variable

Bonjour,

je débute en php et souhaite faire une monté en compétence pour se faire je teste l'envoi de mail.

Je parvient a envoyer mon mail parfaitement avec une pièce jointe un pdf par exemple.

Code :
1
2
3
4
5
$message .= 'Content-Type: application/pdf; name=toto.PDF'."\n";
$message .= 'Content-Transfer-Encoding: base64'."\n";
$message .= 'Content-Disposition:attachement; filename="toto.pdf"'."\n\n";
$message .= chunk_split(base64_encode(file_get_contents('toto.PDF')))."\n";
$message .= '--'.$frontiere.'--'."\n";
Jusque la pas de problème mon souci c'est que le PDF est généré par du code php et que le nom de celui-ci est variable ( toto devient tata par exemple )

J'ai un exemple du code ou je bloque:

Code :
1
2
3
4
5
6
$message .= 'Content-Type: application/pdf; name=$appli_name'."\n";
$message .= 'Content-Transfer-Encoding: base64'."\n";
$message .= 'Content-Disposition:attachement; filename="$appli_name"'."\n\n";
$file_content= file_get_contents(file_get_contents($appli_name));
$message .= chunk_split(base64_encode($file_content))."\n";
$message .= '--'.$frontiere.'--'."\n";
Mon problème se situe sur la ligne :

Code :
$message .= 'Content-Disposition:attachement; filename="$appli_name"'."\n\n";
Il m'envoi bien le mail mais la pièce jointe a pour nom : $appli_name alors que je souhaite qu'elle s'appelle par exemple tata.pdf

je ne sais pas comment donner au fichier le nom qui lui est variable.

J'accepte tout proposition de solution merci.
Himotep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2011, 10h58   #2
Futur Membre du Club
 
himotep himotep
Inscription : juillet 2010
Messages : 67
Détails du profil
Informations personnelles :
Nom : himotep himotep

Informations forums :
Inscription : juillet 2010
Messages : 67
Points : 16
Points : 16
Après beaucoup de test ( je dit beaucoup mais j'entend déjà des personnes dire que j'ai posté a 5 min d'écart, seulement je ne poste ici environ que après 1H de test/recherche fin bon ^^ )

Je donc trouvé une solution je ne sais pas si des experts validerons celle-ci mais la voila.

En lieu et place du caractère : ' en début de ligne j'ai placé un : "

Du coup ma variable passe parfaitement.

Code :
1
2
3
4
5
$message .= "Content-Type: application/pdf; name=$appli_name"."\n";
$message .= 'Content-Transfer-Encoding: base64'."\n";
$message .= "Content-Disposition:attachement; filename=$appli_name"."\n\n";
$message .= chunk_split(base64_encode(file_get_contents("appli_name")))."\n";
$message .= '--'.$frontiere.'--'."\n";
Merci quand même.
Himotep est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h58.


 
 
 
 
Partenaires

Hébergement Web