Date et heure de réception d'un mail envoyé par mail()

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Date et heure de réception d'un mail envoyé par mail()

Re: Date et heure de réception d'un mail envoyé par mail()

par askhanir » 17 nov. 2015, 11:53

Merci pour ma culture personnelle ;)

Re: Date et heure de réception d'un mail envoyé par mail()

par @rthur » 16 nov. 2015, 14:15

Tout à fait, c'est le logiciel de messagerie/webmail qui choisit quelle date il veut afficher.

Il fut un temps (très ancien) où certains logiciels (type Eudora) utilisaient ce champ date comme date/heure principale pour les messages, et cela avait pour conséquence que si l'ordinateur de l'expéditeur n'avait pas la bonne heure ou encore pire la bonne date (par exemple 1er janvier 1970), son message se retrouvait classé par date tout en bas de sa liste de mail et donc quasiment impossible à voir pour celui qui reçoit le mail.

Cette technique a été également utilisé par de nombreux étudiants qui avaient des rendus à effectuer par e-mail avant telle date/heure à qui il suffisait de changer la date de leur PC pour faire croire au professeur qu'ils l'avaient envoyé à temps.
Bref, c'est entre autres pour ces raisons que le champ Date en header indiqué par l'expéditeur n'est plus utilisé ou très rarement.

Re: Date et heure de réception d'un mail envoyé par mail()

par askhanir » 16 nov. 2015, 11:44

Puis-je en conclure que je ne peux rien faire et que ce problème d'heure n'est dû qu'au serveurs de mails entrant des destinataires ou à leur logiciel de messagerie ? ... sous réserve que ce ne soit pas dû au formatage de mon date-time

Merci pour ta réponse et le lien transmis donc je vais prendre connaissance sans plus tarder.

Re: Date et heure de réception d'un mail envoyé par mail()

par @rthur » 16 nov. 2015, 10:12

Bonjour,

Le champ "Date" en entête du mail n'est pas la date de réception, mais la date (et heure) à laquelle l'expéditeur indique que l'écriture du mail a été finalisé et donc juste avant l'entrée du message dans le système d'envoi de mail (SMTP).
Cette date/heure n'a aucune valeur particulière puisque n'importe qui peut mettre n'importe quoi, du coup les client de messagerie email n'en tiennent pas forcément compte.
Certaines messagerie vont afficher cette heure, d'autre vont afficher l'heure à laquelle le mail a été reçu sur leurs serveurs car c'est + fiable.

Par ailleurs, il me semble que le format de date que tu utilises est faux, cf la spec RFC822 qui précise le format attendu pour les champs date-time :
https://tools.ietf.org/html/rfc822#appendix-D

Date et heure de réception d'un mail envoyé par mail()

par askhanir » 16 nov. 2015, 09:43

Bonjour,

J'ai développé une routine d'envoi d'une newsletter. Lorsque je formate la lettre, j'y ajoute la date et l'heure d'envoi dans l'en-tête via le bout de code suivant :

Code : Tout sélectionner

$entete .= "Date: ". date("D, j M Y H:i:s");
Lors de l'envoi, des abonnés reçoivent la lettre avec une heure différente de celle de l'envoi (tandis que je la reçois personnellement avec la bonne heure).

Pour certains l'heure est simplement différente, pour d'autres elles est 00:00:00

J'ai demandé à un des destinataires l'ayant reçue avec la mauvaise heure de me transmettre l'en-tête du mail reçu. Toutes les heures qui y apparaissent sont les bonnes.

J'en viens donc à la (ou les) question(s). D'où provient ce problème ? A quel niveau est défini l'heure de réception ? Dois-je modifier quelque chose au niveau de mon code ?

D'avance merci pour vos réponses, votre collaboration.