Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1719 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Fichier joint, par mail()

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Fichier joint, par mail()

n°1206313
Tilix
Posté le 23-09-2005 à 22:38:41  profilanswer
 

Salut !
 
Alors voilà, j'ai un fichier dans un dossier de mon FTP (ex : ./dossier/fichier.gz )
Je voudrais l'envoyé par mail SANS passé par un formulaire, en fichier joint.
 
Vous pouvez m'aider svp ?
Merci
 
Tilix


Message édité par Tilix le 23-09-2005 à 22:47:04
mood
Publicité
Posté le 23-09-2005 à 22:38:41  profilanswer
 

n°1206455
shakpana
des fois, j'me demande ...
Posté le 24-09-2005 à 13:25:06  profilanswer
 

MIME est la solution ... Multipart Internet Message Extensions
Le principe est de découper le corps du message en morceaux MIME avec chacun leur encodages et leur propriétés, identifiés par les "boundaries" MIME. À partir de là, le client mail fera la distinction des morceaux en fonction de ses capacités à les interpréter : par exemple dans un mail avec un contenu "text/plain" et un en "text/html", si le client ne sait pas interpereter le "html", il affichera le "text".
 
Je vais la faire par l'exemple, ce sera plus rapide ;)
 

Code :
  1. /* debut en-têtes du messsage */
  2. MIME-Version: 1.0
  3. Content-Type: multipart/mixed; boundary="==mimepart0001==";
  4. Content-Transfer-Encoding: 7bit
  5. /* fin en-têtes du messsage */
  6. C'est un message MIME, si vous voyez ce texte, il n'y a plus d'espoir pour vous ...
  7. --==mimepart0001==
  8. Content-Type: text/plain; charset="iso-8859-1"
  9. Content-Transfer-Encoding: 7bit
  10. Voici un email text avec un fichier joint, encodé en base64.
  11. /hth
  12. --==mimepart0001==
  13. Content-Type: image/jpeg; name="whatever.jpg";
  14. Content-Transfer-Encoding: base64
  15. Content-Disposition: attachment
  16. <données de la pièce joint encodée en base64>
  17. --==mimepart0001==--


 
voilà pour le principe, donc tu vas devoir te familiariser avec :
 
- le "format" MIME
http://www.ietf.org/rfc/rfc2045.txt
http://www.ietf.org/rfc/rfc2046.txt
 
- l'encodage en base64 d'un fichier joint :

Code :
  1. // format $data using RFC 2045 semantics
  2. $new_string = chunk_split(base64_encode($data));


 
en plus ... et comme d'hab rtfm :)
http://php.net/mail
http://php.net/manual/en/function.chunk-split.php
http://www.zend.com/zend/spotlight [...] lpart1.php
 
a+
shakpana


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Fichier joint, par mail()

 

Sujets relatifs
[VBS]Problème de taille d'un fichier non mis à jour...[EDIT]Afficher le contenu d'un fichier sur une page html
probleme de chargement de fichier xmlComment uploader un fichier
Fichier unicode[Fichier] librarie portable
Probleme avec la fonction mail() de PHPavec VBS ecrire dans un fichier exel dans des champs a1 a2 ...
un mail avec fichier joint qui ne fonctionne pas...[C++/MFC]Envoyer un mail avec fichier joint
Plus de sujets relatifs à : Fichier joint, par mail()


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR