En utilisant PHP 5.2.0-8 + etch13 sur un serveur LeaseWeb, j'ai un code qui traite un fichier envoyé par e-mail à une certaine adresse en ramassant l'email via imap. J'appelle imap_open
(vérifiant les erreurs et n'en trouvant aucun), obtiens le nombre de messages par imap_num_msg
, et regarde par-dessus puis appelle imap_header
sur chacun. Tout fonctionne sans erreurs.imap_header, recent = N, unseen = "" ... mais je ne l'ai pas encore lu
Je vérifie ensuite if ('U' == $header->Unseen || 'N' == $header->Recent)
. Cela fonctionne correctement avec le même code sur un serveur partagé ModWest, mais ne trouve pas de nouveaux messages sur les serveurs Leaseweb et ModWest VPS. Un print_r
d'un e-mail test envoyé juste avant l'exécution du code a l'en-tête montrant ...
stdClass Object
(
[date] => Tue, 24 Mar 2009 17:57:55 +0100
[Date] => Tue, 24 Mar 2009 17:57:55 +0100
[subject] => Data 200903
[Subject] => Data 200903
[in_reply_to] => <[email protected]>
[message_id] => <[email protected]>
[references] => <[email protected]> <[email protected]>
[toaddress] => [email protected]
[to] => Array
(
[0] => stdClass Object
(
[mailbox] => data
[host] => example.com
)
)
[fromaddress] => "me" <[email protected]>
[from] => Array
(
[0] => stdClass Object
(
[personal] => me
[mailbox] => me
[host] => example.com
)
)
[reply_toaddress] => "me" <[email protected]>
[reply_to] => Array
(
[0] => stdClass Object
(
[personal] => me
[mailbox] => me
[host] => example.com
)
)
[senderaddress] => [email protected]
[sender] => Array
(
[0] => stdClass Object
(
[mailbox] => me
[host] => gmail.com
)
)
[Recent] => N
[Unseen] =>
[Flagged] =>
[Answered] =>
[Deleted] =>
[Draft] =>
[Msgno] => 1
[MailDate] => 24-Mar-2009 17:57:55 +0100
[Size] => 8802
[udate] => 1237913875
)
- Y at-il quelque chose que je fais qui cause que ce soit « lire »?
- Comment puis-je dire qu'il s'agit d'un "nouveau" message.
Merci, Ed