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

  FORUM HardWare.fr
  Programmation
  PHP

  [A moitié résolu] Lire l'adresse de l'expéditeur d'un message

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[A moitié résolu] Lire l'adresse de l'expéditeur d'un message

n°1197493
Kiosquec
Posté le 12-09-2005 à 11:39:43  profilanswer
 

J'ai un programme qui récupère mes messages sur une BAL (Wanadoo ou Laposte), en pop3 ou en imap.
Je peux lire le header et le corps du message (pas encore les pièces jointes, question ultérieure).
Dans le header, je ne parviens pas à isoler l'adresse de l"expéditeur (pour lui envoyer en retour un mail).
J'ai essayé diverses fonctions IMAP à partir de imap_open.
imap_header() possède diverses propriétés, parmi lesquelles 'from', 'in_reply_to', 'remail', 'return_pathaddress', 'sender', 'senderaddress', 'toaddress' etc.
Aucune ne me renvoie d'infos
Il m'est arrivé d'obtenir un alias de l'expéditeur (avec une autre messagerie), mais pas l'adresse qui va avec.
Une hypothèse, c'est que ni Wanadoo ni Laposte ne permettent de lire cette adresse. (Quelle BAL utiliser alors ?)
Une autre hypothèse, c'est que je patauge avec les fonctions.
J'ai vu que certaines fonctions renvoient en fait un tableau...
 
Bref, si quelqu'un peut me fournir le lien vers un exemple qui fonctionne...


Message édité par Kiosquec le 14-09-2005 à 12:08:38
mood
Publicité
Posté le 12-09-2005 à 11:39:43  profilanswer
 

n°1197846
Kiosquec
Posté le 12-09-2005 à 19:01:15  profilanswer
 

Kiosquec a écrit :

J'ai un programme qui récupère mes messages sur une BAL (Wanadoo ou Laposte), en pop3 ou en imap.
Je peux lire le header et le corps du message (pas encore les pièces jointes, question ultérieure).
Dans le header, je ne parviens pas à isoler l'adresse de l"expéditeur (pour lui envoyer en retour un mail).
J'ai essayé diverses fonctions IMAP à partir de imap_open.
imap_header() possède diverses propriétés, parmi lesquelles 'from', 'in_reply_to', 'remail', 'return_pathaddress', 'sender', 'senderaddress', 'toaddress' etc.
Aucune ne me renvoie d'infos
Il m'est arrivé d'obtenir un alias de l'expéditeur (avec une autre messagerie), mais pas l'adresse qui va avec.
Une hypothèse, c'est que ni Wanadoo ni Laposte ne permettent de lire cette adresse. (Quelle BAL utiliser alors ?)
Une autre hypothèse, c'est que je patauge avec les fonctions.
J'ai vu que certaines fonctions renvoient en fait un tableau...
 
Bref, si quelqu'un peut me fournir le lien vers un exemple qui fonctionne...


 
Je complète ma question...
Parfois, le header contient un champ "reply_to". Mais pas toujours. Quand le champ est présent, pas de problème, j'ai mon info. Mais c'est galère quand il ne figure pas, car l'adresse n'est visible nulle part en clair dans la structure du header.
 
Nota : la structure du header est visible par ceci :
 
if ($mail_cnx = imap_open("{".$serveur_entrant.":".$port."/".$protocole."}".$boite, $identifiant, $mot_de_passe) ):
  $nbr_mails = imap_num_msg($mail_cnx);
endif;
if ($nbr_mails == 0):
  echo "Pas de nouveau mail<br />\n";
else:
  for ($i = 1; $i <= $nbr_mails; $i++) {
    $header = imap_fetchheader($mail_cnx, $i, FT_PREFETCHTEXT);
    $decode = new Mail_mimeDecode($header, "\r\n" );
    $structure = $decode->decode();
    print_r($structure);
  }
endif;
 
Pourtant, si je me positionne sur le site de messagerie, par exemple www.laposte.net, je peux faire une réponse à un message, et l'adresse du destinataire s'affiche dans le formulaire d'envoi. C'est donc bien qu'il est récupérable. Mais où et comment ?

n°1198105
Kiosquec
Posté le 13-09-2005 à 09:58:33  profilanswer
 


Merci... Euh !... c'est quoi cette fonction ? Du php ? Un exemple ?

n°1198113
esox_ch
Posté le 13-09-2005 à 10:01:49  profilanswer
 

Configure un logiciel genre thunderbird pour qu'il lise tes messages sur cette bal et s'il recupere ce que tu veux c'est que tu as mal cherché :D


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1198130
omega2
Posté le 13-09-2005 à 10:11:40  profilanswer
 

Kiosquec a écrit :

Merci... Euh !... c'est quoi cette fonction ? Du php ? Un exemple ?


non, juste un bouton au dessus du texte du message. Utile pour compléter ou modifier une réponse ou une question.

n°1199252
Kiosquec
Posté le 14-09-2005 à 12:02:38  profilanswer
 

Le problème est partiellement résolu.
 
Le header contient un champ Return-Path, qui apparaît vide, ou qui contient un alias inutilisable.
J'ai regardé ce qu'il en est avec Thunderbird.
J'édite le fichier inbox et je constate que le champ Return-Path ressemble à ceci :
Return-Path: MACHIN Truc Bidule.etc <truc.machin@un_fai.fr>
ou à ceci :
Return-Path: <truc.machin@un_fai.fr>
 
Lue dans un navigateur web, l'instruction de structure renvoie :
Return-Path:
 
Si je trafique $header avec ceci :
$header = ereg_replace("<|>","#",$header);
l'instruction de structure me renvoie par exemple ceci :
Return-Path: MACHIN Truc Bidule.etc #truc.machin@un_fai.fr#
En recherchant la position des #, je peux isoler l'adresse truc.machin@un_fai.fr et le tour est joué !
 
Si quelqu'un a une solution plus élégante, je suis preneur (et demandeur).
 
Problème à moitié résolu, car je ne peux pas répondre pour autant à tout le monde :
laposte.net me demande un smtp authentifié (je fais comment en php pour authentifier le smtp ???)
wanadoo.fr veut bien répondre aux abonnés wanadoo, mais refuse de relayer aux autres destinataires. (En partant du principe que j'utilise comme expéditeur ma Bal truc@wanadoo.fr).
J'ai bien précisé un champ "from" dans mon message, mais ça ne suffit pas à empêcher l'anti relai de bloquer ma réponse.

Message cité 1 fois
Message édité par Kiosquec le 14-09-2005 à 12:03:29
n°1199334
soju
One shot !
Posté le 14-09-2005 à 13:52:16  profilanswer
 

Kiosquec a écrit :

Le header contient un champ Return-Path, qui apparaît vide, ou qui contient un alias inutilisable.

et tu vois pas le champ from ??
 

Kiosquec a écrit :

Problème à moitié résolu, car je ne peux pas répondre pour autant à tout le monde :
laposte.net me demande un smtp authentifié (je fais comment en php pour authentifier le smtp ???)
wanadoo.fr veut bien répondre aux abonnés wanadoo, mais refuse de relayer aux autres destinataires. (En partant du principe que j'utilise comme expéditeur ma Bal truc@wanadoo.fr).
J'ai bien précisé un champ "from" dans mon message, mais ça ne suffit pas à empêcher l'anti relai de bloquer ma réponse.


non, avec le smtp de wanadoo tu peux envoyer des messages à tout le monde, et tu peux modifier le champ from, donc vérifie ton script et reessaye


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

  [A moitié résolu] Lire l'adresse de l'expéditeur d'un message

 

Sujets relatifs
[résolu]Champ de type Oui/Non[Résolu]Syntaxe Range avec variable
forcer un casting ? [résolu][résolu] Changement d'image lors d'un clic
[résolu] - problème mise en page avec <form>[RESOLU] PB script de creation d'utilisateur
[RESOLU] Supprimmer les droits sur une base ACCESS[PHP] Vérification d'une adresse email
Lire un fichier image en java[DREAMWEAVER] Marre de ce message !!!
Plus de sujets relatifs à : [A moitié résolu] Lire l'adresse de l'expéditeur d'un message


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