[PHP] connection sur un serveur POP

connection sur un serveur POP [PHP] - Programmation

Marsh Posté le 06-09-2001 à 22:52:15    

Voici mon code (ou plutôt celui de mon bouquin):
 
<HTML>
<TITLE>Ma Première Page PHP</TITLE>
<?php
$fp = fsockopen("pop.noos.fr", 110);
if (!fp)
{
  echo "Echec de la connection.\n";
  exit;
}
echo fgets($fp, 512);
fputs("USER mon_login\r\n" );
echo fgets($fp, 512);
fputs("PASS mon_pass\r\n" );
echo fgets($fp, 512);
fputs("QUIT\r\n" );
echo fgets($fp, 512);
fclose($fp);
?>
</HTML>
 
il ne m'affiche rien, est-ce normal?

Reply

Marsh Posté le 06-09-2001 à 22:52:15   

Reply

Marsh Posté le 07-09-2001 à 03:22:28    

<HTML>  
<TITLE>Ma Première Page PHP</TITLE>  
<?php  
$fp = fsockopen("pop.noos.fr", 110);  
if (!fp)  
{  
 echo "Echec de la connection.\n";  
 exit;  
}  
else
{
 echo "Connection établie.\n";  
}
echo fgets($fp, 512);  
fputs("USER mon_login\r\n" );  
echo fgets($fp, 512);  
fputs("PASS mon_pass\r\n" );  
echo fgets($fp, 512);  
fputs("QUIT\r\n" );  
echo fgets($fp, 512);  
fclose($fp);  
?>  
</HTML>  
 
modifie comme ca et regarde si ca affiche connection établie


---------------
Le chat c'est bon, mangez en :p
Reply

Marsh Posté le 07-09-2001 à 08:58:05    

ça n'affiche rien alors que je suis sûr que le pop fonctionne.
 
je me demandais si le pb ne venait pas du fait que je passe par une gateway/dns et qu'il faudrait la déclarer dans la conf de php (le pb c'est que je ne sais pas du tout configurer le machin, j'ai installé easyphp 1.5)

Reply

Marsh Posté le 07-09-2001 à 13:54:42    

Tu tiens vraiment à utiliser les Sockets ??? Sinon, tu peux utiliser les fonction Imap de PHP pour te connecter à un Serveur POP3...
 
Il manque les $fp dans les fputs() :
 
fputs("USER mon_login\r\n" ); -> fputs($fp,"USER mon_login\r\n" );

 

[edtdd]--Message édité par fly lm--[/edtdd]

Reply

Marsh Posté le 07-09-2001 à 15:48:32    

Un petit script pour faire une conneXion POP avec la fonction PHP fsockopen() et récupérer les Id des messages :
 
if ($fp = fsockopen("addr_pop_du_serveur",110))  
{  
 echo "Réponse du serveur POP3: ".fgets($fp,512)."<br>";
 $user = fputs($fp,"USER user\r\n" );
 fgets($fp,512)."<br>";
 $pass = fputs($fp,"PASS password\r\n" );
 fgets($fp,512)."<br>";
 if($user && $pass)
 {
  echo "Authentification réussie...<br>";
  echo "-------------------------------<br>";
  echo "<br>MESSAGE n°   --    ID";
  fputs($fp,"LIST\r\n" );
  fgets($fp,512);
  $result = fgets($fp,512);
   
  while( preg_match("/^([\d]+)\s([\d]+)/",$result,$reg) )
  {
   $message = explode(" ",$result);
   echo "<br>  ".$message[0]." -- ".$message[1];
   $result = fgets($fp,512);
  }
  fputs($fp,"QUIT\r\n" );
  fgets($fp,1024);
  echo "<br><br>------------- FIN LIST ------------";
 }
}  
else
{
echo "Echec de la connexion...";  
}
fclose($fp);

 

[edtdd]--Message édité par fly lm--[/edtdd]

Reply

Marsh Posté le 12-09-2001 à 23:43:07    

merci :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed