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

  FORUM HardWare.fr
  Programmation
  PHP

  Mail + pièce jointe en PHP avec fonction PHP mail()

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Mail + pièce jointe en PHP avec fonction PHP mail()

n°1456683
3nityy
Posté le 13-10-2006 à 12:21:37  profilanswer
 

Bonjour à tous,
 
après une matinée a rechercher sur divers forum un problème similaire au mien, et sans avoir trouvé de réponse, je me décide a poster ma question.
 
Je travaille depuis juin sur un site, existant avant moi, sur lequel des fichiers PDF sont envoyés en pièce jointe de mails en PHP avec la fonction mail().
 
Afin de permettre a ma cliente de savoir si les mails envoyés arrivent bien a destination (nous avons eu un soucis avec le serveur SMTP et quelques mails ne sont jamais arrivés) ma cliente m'a demandé de mettre en place une solution pour vérifier l'arrivée des mails sur la boite du destinataire.
J'ai donc inséré

Code :
  1. "Delivery-Notification-To:sonmail@fai.fr"

dans les headers du code d'envoi du mail.
Depuis ce jour, les messages arrivent bien, le statut de délivrance ne fonctionne pas, et par contre mes pièces jointes n'arrivent plus jointes mais dans le corps du mail en crypté.
J'ai donc supprimé le

Code :
  1. "Delivery-Notification-To:sonmail@fai.fr"

des header, j'ai remis la version antérieure qui fonctionnait très bien, et .... j'ai toujours le problème !
Je ne comprends donc pas ce qui se passe et me trouve complètement démunies pour régler le problème.
 
Auriez vous une idée d'une direction dans laquelle chercher ???
Mille merci par avance de votre aide
3nityy

mood
Publicité
Posté le 13-10-2006 à 12:21:37  profilanswer
 

n°1456705
bassene
Posté le 13-10-2006 à 12:48:50  profilanswer
 

salut aprés une sacrée recherche j'ai vue ceci :
additional_headers (optionnel)
CHaîne à insérer à la fin des en-têtes du mail.  
 
Ce paramètre est typiquement utilisé pour ajouter des en-têtes supplémentaires (From, Cc et Bcc). Les en-têtes supplémentaires doivent être séparés par un caractère CRLF (\r\n).  
 
Note : Lors de l'envoi d'un mail, le mail doit contenir un en-tête From. Il peut être défini par le paramètre additional_headers, ou un par défaut peut être défini dans le php.ini.  
 
Ne pas faire ceci causera un message d'erreur similaire à Warning: mail(): "sendmail_from" not set in php.ini or custom "From:" header missing. L'en-tête From définit également l'en-tête Return-Path sous Windows.  
 
Note : Si le message n'est pas reçu, essayez d'utiliser uniquement un caractère LF (\n). Quelques agents de transfert de mail Unix de mauvaise qualité remplacent le caractère LF par le caractère CRLF automatiquement (ce qui revient à doubler le caractère CR si le caractère CRLF est utilisé). Ceci doit être un dernier recours car cela ne correspond pas à la RFC 2822.  
 
additional_parameters (optionnel)
Le paramètre additional_parameters peut être utilisé pour passer des paramètres additionnels au programme configuré à être utilisé pour envoyer les mails en utilisant le paramètre de configuration sendmail_path. Par exemple, ceci peut être utilisé pour définir l'enveloppe de l'adresse de l'expéditeur lors de l'utilisation de sendmail avec l'option -f.  
 
L'utilisateur sous lequel tourne le serveur web doit être ajouté en tant qu'utilisateur de confiance dans la configuration de sendmail afin que l'en-tête X-Warning ne soit pas ajouté au message lorsque l'enveloppe de l'expéditeur (-f) est défini en utilisant cette méthode. Pour les utilisateurs de sendmail, ce fichier est /etc/mail/trusted-users.  
 
 
 
je te conseille de lire la RFC ya des choses inéressantes à voir.

n°1456752
3nityy
Posté le 13-10-2006 à 13:33:50  profilanswer
 

Bonjour bassene, et merci énormément de ta réponse.
Je ne comprends pas très bien le lien avec ma question ? J'ai relu 3 fois, et j'avoue ne pas comprendre... je suis désolée...
L'envoi de mail se fait correctement avec un from.
Cet envoi de mail ne pose pas de problème.
Dans la mesure ou j'ai supprimé le code que je pensais être a l'origine du problème, et ou le problème persiste, j'en déduis qu'il y a un autre problème. reste à savoir lequel.
Ce qui est très étonnant, c'est que cette erreur se produit de façon aléatoire.  
J'ai d'abord pensé a une erreur d'interprétation de la boite mail réceptrice, mais celle ci n'est jamais la même dans les différnets cas d'erreur que je reçois, j'ai donc abandonné cette hypohèse.. Et lorsque ma cliente tente de reproduire l'erreur, il n'y en a pas...
Comment un code fonctionnant normalement, se met d'un coup a ne plus fonctionner ??  
Désolée, mais merci encore de ta répondre !

n°1457117
leflos5
On est ou on est pas :)
Posté le 14-10-2006 à 11:27:37  profilanswer
 

T'as aucun moyen d'être sur à 100% que le mail est reçu malheureusement.
 
Si la fonction mail retourne false t'es fixé mais si ça part et que ça arrive pas (boite pleine, adresse de compte pop inexistante mais serveur existant) t'auras un mail plus tard (ça peut être plus ou moins long) et reste qu'à traiter ça après en effet :)
 
Mais tu peux très bien ne rien avoir!

n°1457139
Kyfun
Les choses se passent !
Posté le 14-10-2006 à 12:47:30  profilanswer
 

Faut voir aussi si y'aurai pas un filtre antispam du coté du client :) C'est source de problèmes à la con :)


---------------
Comme dirait quelqu'un de beaucoup plus avisé que moi, quelquefois c'est toi qui cognes le bar mais d'autres fois, et ben, c'est le bar qui te cogne.

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

  Mail + pièce jointe en PHP avec fonction PHP mail()

 

Sujets relatifs
[PHP][MySQL] lancer une procedure stockée[PHP] Récupérer et lancer une requête à partir d'une checkbox
fonction unlink bloque l'affichage d'une tableAppeler une fonction dont le nom peut varier?
[PHP] Exploiter le premier elt d'un array retourné par une fonction?Contenu html en fonction du browser
[HTLM][PHP] Entete de tableau à 45 °PHP : Fonction mail() bloque ma page
[PHP] Fonction mail() avec HTML ET piece jointe ? 
Plus de sujets relatifs à : Mail + pièce jointe en PHP avec fonction PHP mail()


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