OVH Community, votre nouvel espace communautaire.

ch script php pop3


jedisct1
26/09/2008, 14h36
Tu peux télécharger le code source, c'est du PEAR pas du PECL : c'est du code PHP normal que tu peux inclure dans tes propres scripts et qui ne devrait pas poser de soucis en mutualisé.

ovhachement
26/09/2008, 14h13
Citation Envoyé par jedisct1
Tu peux utiliser la classe Net_POP3 : http://pear.php.net/package/Net_POP3
Merci pour cette piste.
OVH ne propose malheureusement pas toutes les classes PEAR en mutulaisé.
Si ce n'était plus le cas, merci de me l'indiquer.

jedisct1
26/09/2008, 13h23
Tu peux utiliser la classe Net_POP3 : http://pear.php.net/package/Net_POP3

Torak
26/09/2008, 12h59
Je n'ai pas le temps de voir en détail, mais à la fin de ton code, mets :

print "mes courriers : " . print_r($mes_courriers);

cela te donnera les différents éléments contenus dans le tableau avec leur clé

ovhachement
28/02/2005, 11h07
Bonjour,

le script suivant trouvé sur nexen.net fonctionne chez OVH mais je n'arrive pas à exploiter les infos retournées dans le tableau.

function infosmails($server,$user,$passwd,$port=110){
/* Paramètres */
$server = "ns0.ovh.net";
$user = "mon.email@mon.com" ;
$passwd = "monpass" ;

/* Paramètre optionnel
$port : port de connexion au serveur
*/

// $connect = "{".$server."/pop3:$port"."}INBOX";
$connect = "{ns0.ovh.net/imap/notls:143}INBOX"; // VERSION FOURNIE PAR OVH
if ($mbox = imap_open($connect,$user,$passwd, OP_READONLY))
{
$nb_msg = imap_num_msg($mbox);
$nb_rec = imap_num_recent($mbox);
$retour = array();

$retour[0]['nb msgs'] = $nb_msg;
$retour[0]['nb recents'] = $nb_rec;

for ($i = 1;$i <= $nb_msg;$i++)
{
$o = imap_headerinfo($mbox,$i);
if ($o->Unseen == 'U' || $o->Recent == 'N')
{
if ($o->Unseen == 'U')
$retour[$i]['status'] = 'unseen';
else
$retour[$i]['status'] = 'recent';

$content = $o->to;
$retour[$i]['to'] = '';
foreach($content as $addr)
$retour[$i]['to'] .= $addr->personal.' ('.$addr->mailbox.'@'.$addr->host.'),';
$retour[$i]['to'] = substr($retour[$i]['to'],0,-1);

$content = $o->from;
foreach($content as $addr)
$retour[$i]['from'] = $addr->personal.' ('.$addr->mailbox.'@'.$addr->host.'),';
$retour[$i]['from'] = substr($retour[$i]['from'],0,-1);

if ($o->ccaddress == '')
$retour[$i]['cc'] = $o->ccaddress;
else
{
$content = $o->cc;
$retour[$i]['cc'] = '';
foreach($content as $addr)
$retour[$i]['cc'] .= $addr->personal.' ('.$addr->mailbox.'@'.$addr->host.'),';
$retour[$i]['cc'] = substr($retour[$i]['cc'],0,-1);
}

if ($o->bccaddress == '')
$retour[$i]['bcc'] = $o->bccaddress;
else
{
$content = $o->bcc;
$retour[$i]['bcc'] = '';
foreach($content as $addr)
$retour[$i]['bcc'] .= $addr->personal.' ('.$addr->mailbox.'@'.$addr->host.'),';
$retour[$i]['bcc'] = substr($retour[$i]['bcc'],0,-1);
}

$retour[$i]['subject'] = $o->subject;
$retour[$i]['date'] = $o->date;
}
}
imap_close($mbox);
return $retour;
}
else
return imap_last_error();
}

$mes_courriers = infosmails($server,$user,$passwd,$port=110) ; // port = 110 EST-IL UTILE ?
print "mes courriers : " . $mes_courriers; // RETOURNE UN TABLEAU ARRAY MAIS COMMENT INTERPRETER CE QU IL Y A DEDANS ???
?>

Si vous avez des idées, cela me rendra service.