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

  FORUM HardWare.fr
  Programmation
  PHP

  Problème d'ouverture de pièce jointe

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème d'ouverture de pièce jointe

n°1996232
Allegretto
Posté le 26-05-2010 à 15:54:45  profilanswer
 

Bonjour à Tous,
En préambule, je n'y connais pas grand-chose en PHP, il faut bien l'avouer, mais notre développeur "maison" est parti, et il faudrait pourtant que j'arrive à faire marcher ce script !! Je n'y connais donc pas grand-chose en PHP, mais j'ai pourtant adoré réparer ou modifier ( tout seul ! ) quelques lignes de scripts, au fil des mois, et c'est vraiment magique quand les choses se remettent en ordre...
Concernant ce problème, j'ai beaucoup cherché et  tenté beaucoup de modifs, mais je n'y arrive pas. Cela doit n'être pourtant qu'une p'tite "pétouille". Arghh, je ne comprends pas suffisamment ce que je fais.  
 
Donc...
Sur notre site, un script s'occupe de l'envoi de mails avec pièces jointes au format xls. Ça fonctionne bien, à la nuance près qu'à l'ouverture de la pièce jointe, on a droit à un beau message d'erreur "Le format du fichier....est différent de celui spécifié par l'extension de fichier...".
Pas bien grave donc ( la pièce jointe s'ouvre quand même sans aucun souci) , SAUF que ces mails doivent maintenant être utilisés pour l'envoi de fax via l'Ecofax d'OVH. Et que celui-ci ne reconnait pas l'extension du fichier, et donc pas de fax ( on en a une centaine par jour, caisse qu'on économiserais comme temps !).
 
Le script ( tout au moins les parties qui doivent poser problème):

Code :
  1. //on prepare le texte pour le mail :
  2. $phrase = "Ce mail est au format MIME 1.0 multipart/mixed.\n";
  3. $phrase = $phrase . "--$delimiteur\n";
  4. $phrase = $phrase . "Content-Type: text/plain; charset=\"iso-8859-1\"\n";
  5. $phrase = $phrase . "Content-Transfer-Encoding:8bit\n";
  6. $phrase = $phrase . "\n";
  7. $phrase = $phrase . " Ce mail contient la notification en pièce jointe au format Excel\n";
  8. $phrase = $phrase . "\n";
  9. //on lit le fichier image pour l'encoder :
  10. $fp          = fopen($img, "rb" );
  11. $img_attache = fread($fp, filesize($img));
  12. fclose($fp);
  13. /*
  14. //on encode l'image
  15. $img_attache = chunk_split(base64_encode($img_attache));
  16.  
  17. //on insert l'image dans le fichier
  18. $phrase = $phrase . "--$delimiteur\n";
  19. $phrase = $phrase . "Content-Type: application/octet-stream; name=\"$img\"\n";
  20. $phrase = $phrase . "Content-Transfer-Encoding: base64\n";
  21. $phrase = $phrase . "Content-ID: <image1>\n";
  22. $phrase = $phrase . "\n";
  23. $phrase = $phrase . $img_attache . "\n";
  24. $phrase = $phrase . "\n\n";
  25. $phrase = $phrase . "--$delimiteur\n";
  26. */


Code :
  1. $fichier = $fichier . "</div>
  2. </BODY>
  3. </HTML>\r\n";
  4. $fichier = $fichier . "\n";
  5. $nom     = $database_date . "_notification.xls";
  6. //on encode le fichier
  7. $fichier = chunk_split(base64_encode($fichier));
  8. //on insert le fichier
  9. $phrase = $phrase . "--$delimiteur\n";
  10. $phrase = $phrase . "Content-Type: application/vnd.ms-excel; name=\"$nom\"\n";
  11. $phrase = $phrase . "Content-Transfer-Encoding: base64\n";
  12. $phrase = $phrase . "Content-Disposition: attachment; filename=\"$nom\"\n";
  13. $phrase = $phrase . "\n";
  14. $phrase = $phrase . $fichier . "\n";
  15. $phrase = $phrase . "\n\n";
  16. $phrase = $phrase . "--$delimiteur\n";
  17. return $phrase;
  18. }
  19. //*****************************************************************************************
  20. ?>


 
Voilà ! Ca m'énerve, mais j'ai tout passé à la moulinette et je ne trouve pas.
Si une bonne âme avais la gentillesse de jeter un coup d'œil (quitte à me ridiculiser, hein!, pas de problème -) ),  ca serait gentil de sa part .
 
Merci d'avance, et Cordiales Salutations à tous.

mood
Publicité
Posté le 26-05-2010 à 15:54:45  profilanswer
 


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

  Problème d'ouverture de pièce jointe

 

Sujets relatifs
ouverture fichier Excel protégéProblème de cookie
html: Probleme entre getElementById et internet explorerProblème formulaire HTML& PHP
probleme creer une ligne dans une bdd a partir de c++ winformProblème dans les code HTML et CSS
(Résolu) Coin3D/Open Inventor, problème installINSERT dans mySQL avec Delphi (problème de backslash)
Pb Ouverture de pop upRésolu : variable modifiée par l'affectation d'une autre variable
Plus de sujets relatifs à : Problème d'ouverture de pièce jointe


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