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

  FORUM HardWare.fr
  Programmation
  PHP

  Récuperer en ligne les donnés d'un compte mail...PLEASE HELP !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Récuperer en ligne les donnés d'un compte mail...PLEASE HELP !

n°221443
vitom
www.produitinterieurbrut.com
Posté le 27-09-2002 à 16:17:03  profilanswer
 

j'ai fait 36recherches et je trouve pas de réponses...
 
Comment faire pour récuperer en ligne le contenu de sa boite mail(expediteur,contenu du message...) sous forme de variables pour pouvoir les exploiter ensuite...
 
Est-ce faisable en PHP ?
 
Merci pour vos réponses :jap:


Message édité par vitom le 27-09-2002 à 22:03:04
mood
Publicité
Posté le 27-09-2002 à 16:17:03  profilanswer
 

n°221452
Dost67
Posté le 27-09-2002 à 16:27:21  profilanswer
 

Regarde du côté de la librairie IMAP dans la documentation. Ca sert exactement ce que tu veux et même des opérations de suppression, etc.
Le support IMAP est préinstallé avec EasyPHP 1.5 (sé pas pour 1.6).

n°221453
lorill
Posté le 27-09-2002 à 16:27:32  profilanswer
 

Regarde du coté de pop ou d'imap, selon ton serveur (probablement pop d'ailleurs). Sinon tu as plein (mais alors plein) de webmails en php...

n°221463
vitom
www.produitinterieurbrut.com
Posté le 27-09-2002 à 17:12:00  profilanswer
 

dost67,lorill, merci pour vos réponses. je vais aller chercher du coté des documentations.
 
 
auriez vous des exemples concrets, par exemple aussi sur le fonctionnement des webmails en php.
 
pour info je voudrais tenter l'opération dans un premier temps sur un compte free.
 
Merci pour toutes autre réponses :jap:
 
 
 

n°221466
zion
Plop
Posté le 27-09-2002 à 17:17:41  profilanswer
 

http://www.phpbuilder.com/columns/musone19990207.php3
 
Sinon vla un script que j'ai fait pour envoyer tous les messages venant d'un compte mail vers les newsgroups d'un groupe de dev Delphi  ;)  
 
 

Code :
  1. <?php
  2.                                          
  3. //POP Options
  4. $cfgPopServer = "pop.serveur.com"; //Modifié :D
  5. $cfgPopPort   = 110;
  6. $cfgUser      = "tonuser"; //Modifié :D
  7. $cfgTimeOut   = 10;
  8. $cfgPass      = "tonpass"; //Modifié :D
  9. $cfgIgnore    = "polom@polom.com"; //Modifié :D
  10. //NNTP options
  11. $cfgGroup     = "jedi.vcl"; 
  12. $cfgServer    = "forums.unserveur.com"; //Modifié :D
  13. $cfgPort      = 119;
  14. function ConnectToServer()
  15. {
  16.   global $cfgServer, $cfgPort, $cfgTimeOut, $handle;
  17.   $handle = fsockopen($cfgServer, $cfgPort, $errno, $errstr, $cfgTimeOut);
  18.   return $handle!=0;
  19. }
  20. function PostArticle($from, $subject, $reference, $body, $oldsubject)
  21. {
  22.   global $handle, $cfgGroup;
  23.   if (strpos(StrToLower($oldsubject),"jedi-vcl" )!=false)
  24.     $group = "jedi.vcl";
  25.   else if (strpos(StrToLower($oldsubject),"developers" )!=false)
  26.     $group = "jedi.vcl";
  27.   else if (strpos(StrToLower($oldsubject),"math" )!=false)
  28.     $group = "jedi.math";
  29.   else
  30.     return;
  31.   fputs($handle,"POST\r\n" );
  32.   $tmp = fgets($handle, 1024);
  33.   $body = "From: $from\r\n".
  34.           "Newsgroups: $group\r\n".
  35.           "References: $reference\r\n".
  36.           "Subject: $subject\r\n\n".
  37.           $body."\r\n.\r\n"; //."\r\n.\r\n"; //Do not print . as we do not remove it from the pop message
  38.   fputs($handle,$body);
  39. }
  40. //Connect to server
  41. $phandle = fsockopen($cfgPopServer, $cfgPopPort, $errno, $errstr, $cfgTimeOut);
  42. $tmp = fgets($phandle, 4096);
  43. fputs($phandle,"USER $cfgUser\r\n" );
  44. $tmp = fgets($phandle, 4096);
  45. fputs($phandle,"PASS $cfgPass\r\n" );
  46. $tmp = fgets($phandle, 4096);
  47. fputs($phandle,"STAT\r\n" );
  48. $tmp = fgets($phandle, 4096);
  49. $stat = Explode(" ",$tmp);
  50. //Get messages
  51. if (ConnectToServer())
  52.   for ($i=1;$i<=$stat[1];$i++)
  53.   {
  54.     $header = true;
  55.     $footer = false;
  56.     $from = "";
  57.     $subject = "";
  58.     $article = "";
  59.     $reference = "<none>";
  60.     //Fetch message
  61.     fputs($phandle,"RETR $i\r\n" );
  62.     do
  63.     {
  64.       $tmp = fgets($phandle, 4096);                         
  65.       if (trim($tmp)=="" )
  66.         $header = false;
  67.       else if (StrPos($tmp,"Yahoo! Groups Sponsor" )!=false)
  68.       {
  69.         $footer = true;
  70.         $article = $article."----Message transited via JEDI Script Gateway----\n";
  71.       }
  72.       if ((!$footer) || (trim($tmp=="." )))
  73.         if (!$header)
  74.         {
  75.           if (strpos($tmp,"---Reference:" )!=false)
  76.           {
  77.             $tmp = substr($tmp,strpos($tmp,":" )+2,4096);
  78.             $tmp = Trim($tmp);
  79.             if (strpos($tmp,"-" )!=false)
  80.               $tmp = substr($tmp,0,strpos($tmp,"-" ));
  81.             $reference = Trim($tmp);
  82.           }
  83.           else if (strpos($tmp,"---" )==false)
  84.             $article = $article.$tmp;
  85.         }
  86.         else
  87.         {
  88.           if (substr($tmp,0,4) == "From" )
  89.           {
  90.             $tmp = substr($tmp,6,4096);
  91.             $from = Trim($tmp);
  92.           }
  93.           else if (substr($tmp,0,7) == "Subject" )
  94.           {
  95.             $tmp = substr($tmp,8,4096);
  96.             $subject = $tmp;
  97.           }
  98.         }
  99.     }while (trim($tmp)!="." );
  100.     //Post article
  101.     $oldsubject = $subject;
  102.     $k = StrPos($subject,"]" );
  103.     if ($k!=false//Avoid spams (if no ] in the subject, it's not surely not a msg from the mailing list)
  104.     {
  105.       $subject = Trim(SubStr($subject,$k+1));
  106.       if ((StrPos($from,$cfgIgnore)==false) && (StrPos(StrToLower($subject),"unsubscribe" )==false))
  107.       {
  108.         $oldfrom = $from;
  109.         $k = StrPos($from,"<" );
  110.         if ($k==false)
  111.           $k = StrPos($from,"@" );
  112.         if ($k!=false)
  113.           $from = Trim(SubStr($from,0,$k));
  114.         $from = $from." <".$cfgIgnore.">";
  115.         PostArticle($from,$subject,$reference,$article,$oldsubject);
  116.       }
  117.     }
  118.     /*echo "FROM: $from\n";
  119.     echo "SUBJECT: $subject\n";
  120.     echo "Ref: $reference\n";
  121.     echo "$article\n";*/
  122.     fputs($phandle,"DELE $i\r\n" );
  123.     $tmp = fgets($phandle, 4096);
  124.   }
  125. fputs($phandle,"QUIT\n" );
  126. $tmp = fgets($phandle, 4096);
  127. fclose($phandle);
  128. fclose($handle);
  129. ?>

 
 
c'est ni sécure, ni portable et encore moins propre, mais j'en avais besoin vite, et c'est assez perso... enfin soit, tu peux toujours t'amuser avec ca  ;)


---------------
Informaticien.be - Lancez des défis à vos amis
n°221526
vitom
www.produitinterieurbrut.com
Posté le 27-09-2002 à 20:46:44  profilanswer
 

zion -> merci pour ta réponse, j'ai un peu de mal à réutiliser ton code,  
le site que tu m'as donné donne un exemple pour lire les mails à travers un serveur Imap mais j'ai des petits soucis pour le mettre en application...
 
d'abord, qu'est ce qu'ils entendent par compiler du PHP avec Imap ? :
Once you have a running IMAP server and PHP compiled with IMAP support (make sure you read the PHP docs on how to compile PHP with imap), the rest is easy! :
 
de là on créer 1 petit fichier :
 
messages.php3 :
 

Code :
  1. <?php
  2. $MAILSERVER="{localhost/imap}"; -> est-ce que je doit remplacer par un truc style IMP.FREE.FR, de tout façon ça marche pas non plus avec... :(
  3. $link=imap_open($MAILSERVER,login,mdp);
  4. $headers=imap_headers($link);
  5. for($x=1; $x < count($headers); $x++) {
  6.     $idx=($x-1);
  7.     echo "<a href=\"view.php3?num=$x\">$headers[$idx]</a><br>";
  8. }
  9. ?>


 
 
voilà ce que j'ai comme message :
 
Warning: Couldn't open stream {localhost/imap} in c:\sqlserver\www\messages.php3 on line 4
 
Warning: imap_headers(): supplied argument is not a valid imap resource in c:\sqlserver\www\messages.php3 on line 5
 
J'ai du mal à mettre au clair le cheminement nécessaire pour accéder aux mails. QQun pourrait-il expliquer le procéder, j'ai du mal à saisir le concept du PHP compiled with IMAP...  :??:  
 
Merci beaucoup pour vos réponses :jap:
 
[edit : qq petites fautes de phransai...]


Message édité par vitom le 27-09-2002 à 20:47:51
n°221532
lorill
Posté le 27-09-2002 à 21:06:25  profilanswer
 

ViToM a écrit a écrit :

j'ai du mal à saisir le concept du PHP compiled with IMAP...




 
Simple. PHP est un langage interprété. Pour avoir l'interpréteur php, il faut le compiler. Par défaut, il inclue le support d emysql & cie. En utilisant d'autres options a la compilation de l'interpreteur, tu peux rajouter differents modules, comme d'autres bases, snmp, imap... En gros pour free t'as rien a faire, mais si ils ne l'ont pas compilé avec, tu es bloqué.

n°221536
vitom
www.produitinterieurbrut.com
Posté le 27-09-2002 à 21:18:02  profilanswer
 

lorill -> ah ok merci, effectivement c'était pas très compliqué  :sweat:  
 
ce qui signifie que je dois executer mon code sur leur server (en l'occurence Free), voilà ce que j'obtiens :
 
Fatal error: Call to unsupported or undefined function imap_open() in your script on line 4
 
-> donc j'en déduis quoi ? :
1. ils ont désactivés l'IMAP avec PHP
2. Ils empechent les requetes IMAP
3. "mon" code c'est du n'importe quoi...  :pt1cable:  
 
Merci pour d'autres réponses :jap:

n°221537
izz
NON aux Brevets Logiciels
Posté le 27-09-2002 à 21:19:46  profilanswer
 

tu peux aussi dissequer un webmail en php pour voir leurs astuces ...
 
par exemple imp : http://horde.org
 
site de demo : http://webmail.demo.hub.org/
 
tomic : http://forum.hardware.fr/forum2.ph [...] h=&subcat=


Message édité par izz le 27-09-2002 à 21:21:27
n°221538
izz
NON aux Brevets Logiciels
Posté le 27-09-2002 à 21:20:40  profilanswer
 

ViToM a écrit a écrit :

-> donc j'en déduis quoi ? :
1. ils ont désactivés l'IMAP avec PHP
2. Ils empechent les requetes IMAP




 
recherche IMAP sur leur phpinfo  :)  :??:

mood
Publicité
Posté le 27-09-2002 à 21:20:40  profilanswer
 

n°221545
vitom
www.produitinterieurbrut.com
Posté le 27-09-2002 à 21:34:45  profilanswer
 

izz a écrit a écrit :

 
 
recherche IMAP sur leur phpinfo  :)  :??:  




 
merci pour tes réponses mais :
 
phpinfo() not allowed sur Free  :o  
 
Alors, Imap possible chez free ou po ?
 

n°221546
HORNY-Gran​dcornu
grumf !
Posté le 27-09-2002 à 21:38:58  profilanswer
 

si la fonction existe ( http://dev.nexen.net/ ) mais qu'elle est refusée sur Free, il n'y a pas 36 explications possibles, ils l'ont désastivée...


Message édité par HORNY-Grandcornu le 27-09-2002 à 21:39:27
n°221552
vitom
www.produitinterieurbrut.com
Posté le 27-09-2002 à 22:02:07  profilanswer
 

HORNY-GRANDCORNU : merci pour ta réponse, la fonction existe c'est certain, je pense pas qu'elle soit utilisé de manière incorrecte :
 
j'ai essayé sur levillage.org la meme fonction :
 

Code :
  1. <?php 
  2. $MAILSERVER="{localhost/imap}";
  3. $link=imap_open($MAILSERVER,login,mdp); 
  4. $headers=imap_headers($link); 
  5. for($x=1; $x < count($headers); $x++) { 
  6.    $idx=($x-1); 
  7.    echo "<a href=\"view.php3?num=$x\">$headers[$idx]</a><br>"; 
  8. ?>

 
 
voilà ce que ça répond :
 
Vous avez une erreur qq part dans votre code ou vous utilisez une fonction non valide sur notre serveur
Warning: Couldn't open stream {localhost/imap} in ...
Vous avez une erreur qq part dans votre code ou vous utilisez une fonction non valide sur notre serveur
Warning: imap_headers(): supplied argument is not a valid imap resource in ...

 
est-ce que vous trouvez que le code à l'air mauvais ?
connaissez vous un hébergeur qui accepte de manière certaine les requetes IMAP ?
 
Merci pour d'autres réponses :jap:


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

  Récuperer en ligne les donnés d'un compte mail...PLEASE HELP !

 

Sujets relatifs
Récupérer des données sur des sites Internet et les utiliser ???[flash] un truc tout bete, recuperer la valeur d'un bouton radio
requete SQL... petite question toute simple... Help pleaseRécuperer une base MySQL dans Excel, comment faire ?
origine d'un visiteur (depuis lien mail)[VBA - Excel] Comment recuperer le nom du fichier courent ?
ACCESS requète qui me prends la tête please HELP !!!Formulaire mail + pop up !!??
Plus de sujets relatifs à : Récuperer en ligne les donnés d'un compte mail...PLEASE HELP !


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