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
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
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?
pourquoi ne pas faire simplement ?
generer /tmp/aEnvoyer.pdf
pour envoyer un fichier joint il faut bien un fichier !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if ( mail(aEnvoyer.pdf) ) { unlink ( /tmp/aEnvoyer.pdf ); }
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
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.
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
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); }
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);
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager