IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

envoyer un mail avec fichier joint généré par fpdf


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    377
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2013
    Messages : 377
    Points : 71
    Points
    71
    Par défaut envoyer un mail avec fichier joint généré par fpdf
    Bonjour tout le monde j'aimerai savoir comment envoyer un mail en m^me temps que la génération de la fiche pdf sans l'enregistrer sur mon disque

  2. #2
    Membre averti
    Avatar de omar344
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2007
    Messages
    287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2007
    Messages : 287
    Points : 301
    Points
    301
    Par défaut
    Bonsoir
    Ta question est un peu floue, j'aimerais savoir:
    Comment est générée cette fiche?
    Quelle est le but de la fiche?
    Est-ce que tu arrives à envoyer ton mail avec pièce jointe?

  3. #3
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 201
    Points : 4 665
    Points
    4 665
    Par défaut
    pourquoi ne pas faire simplement ?

    generer /tmp/aEnvoyer.pdf

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if    (   mail(aEnvoyer.pdf)  ) {
     unlink (  /tmp/aEnvoyer.pdf  );
    }
    pour envoyer un fichier joint il faut bien un fichier !

  4. #4
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    377
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2013
    Messages : 377
    Points : 71
    Points
    71
    Par défaut
    la fiche est générée par la bibliothèque fpdf il est, et elle n'est pas enregistrée sur mon ordinateur de coup j'aimerai savoir si je peux envoyer la fiche comme cela

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2010
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2010
    Messages : 89
    Points : 82
    Points
    82
    Par défaut
    Il est tout a fais possible d'envoyer un pdf généré par fpdf dans un mail mais sans l'enregistrer je ne crois pas non. la fonction mail() à besoin de connaitre l'emplacement de la pièce jointe. ci dessous la function que j'utilise pour envoyer des mails avec des PJ.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    function mailToPJ($dest,$obj,$message,$nameFile,$from)
    	{
    	//$dest = "mymail@mydomain.com" ;// a décommenté sur les serveur de dev ou test pour eviter des envois de mails genant en phase de test.
    	$boundary = "_".md5 (uniqid (rand())); 
    	$headers ="From: \"MON NOM\"<$from>\n";
    	$headers .="Reply-To: $from\n";
    	$headers .= "MIME-Version: 1.0\r\nContent-Type: multipart/mixed; boundary=\"$boundary\"\r\n"; 
    	$headers .='Content-Transfer-Encoding: 8bit';
     
    	$attached = "";
    	$lenghtFile = sizeof($nameFile);
    	if ($lenghtFile>=2)
    	{
    		foreach ($nameFile as $key)
    			{
     
    				$fileName = explode("\\",$key);
    				$lenghtTab = sizeof($fileName)-1;
    				$fileName = $fileName[$lenghtTab];
     
    				$attached_file = file_get_contents($key);
    				$attached_file = chunk_split(base64_encode($attached_file));
    				$attached.="\n\n". "--" .$boundary . "\n" .
    						"Content-Type: application;" .
    						"name=\"$fileName\"\r\n" .
    						"Content-Transfer-Encoding: base64\r\n" .
    						"Content-Disposition: attachment;" .
    						"filename=\"$fileName\"\r\n\n".$attached_file ."--";
    			}
    	}
    	else
    	{
     
    				$fileName = explode("\\",$nameFile);
    				$lenghtTab = sizeof($fileName)-1;
    				$fileName = $fileName[$lenghtTab];
     
    				$attached_file = file_get_contents($nameFile);
    				$attached_file = chunk_split(base64_encode($attached_file));
    				$attached.="\n\n". "--" .$boundary . "\n" .
    						"Content-Type: application;" .
    						"name=\"$fileName\"\r\n" .
    						"Content-Transfer-Encoding: base64\r\n" .
    						"Content-Disposition: attachment;" .
    						"filename=\"$fileName\"\r\n\n".$attached_file ."--";
    	}
     
     
    	$body = "--". $boundary ."\nContent-Type: text/html; charset=utf-8\r\n\n".$message . $attached; 	  	
     
    	 $tabInfos=array($dest,$obj,$message);
    	if(!mail($dest,$obj,$message) )gestionErreur($tabInfos);
    	}
    un petit exemple d'appel de la function :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $dest = mes destinataires, adresse séparé par des ,.
    $obj = objet du mail
    $message = le corps du mail
    $from = addresse utilisé pour répondre a ce mail.
    $tabPj = tableau contenant le ou les fichiers a inclure au mail. chaque entré contient le chemin d'accès complet au fichier a inclure (ex : $tabPj[]="\\\\127.0.0.1\\FOLDER\\MONPDF.pdf";
    mailToPJ($dest,$obj,$message,$tabPj,$from);

Discussions similaires

  1. [Mail] Envoyer un email avec fichier joint
    Par tintin72 dans le forum Langage
    Réponses: 3
    Dernier message: 02/05/2008, 21h37
  2. [C++/MFC]Envoyer un mail avec Pièce jointe
    Par cjacquel dans le forum MFC
    Réponses: 4
    Dernier message: 12/06/2006, 13h48
  3. [Librairies] Envoyer mail avec fichier joint
    Par TicTacToe dans le forum Bibliothèques et frameworks
    Réponses: 24
    Dernier message: 11/05/2006, 17h55
  4. envoi mail avec fichier joint
    Par dietrich dans le forum API standards et tierces
    Réponses: 14
    Dernier message: 28/02/2006, 14h42
  5. [c#] Envoi d'un mail avec fichier joint
    Par macfred dans le forum ASP.NET
    Réponses: 8
    Dernier message: 05/12/2005, 11h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo