eMail Löschen mit imap - Funktionen
AG
- php
0 Mike
Hallo,
ich benutze Ken Dsl als eMail-Server. Jetzt habe ich in PHP per imap Funktionen die Mailbox ausgelesen. Alles funtioniert soweit ganz gut. Leider habe ich ein Problem mit dem Löschen der eMails. Das PHP Script wird alle 60s aufgerufen, sodaß ich immer die gleichen eMails abrufe. Was ist das Problem?
Code:
<?php
$mbox=imap_open("{mein.pop3server.land/pop3:110}","user","passwort");
$check=imap_mailboxmsginfo($mbox);
$anzahl=$check->Nmsgs;
if(!empty($anzahl)){
for($i=1;$i<=$anzahl;$i++){
$emailtext=imap_body($mbox,$i);
...weiterer Code zur Verarbeitung...
//Selbst doppelte Angabe des Löschen funktioniert nicht
imap_delete($mbox,$i);
$status=imap_setflag_full($mbox,"$i","\Deleted");
if(!$status) print imap_last_error();
}
imap_expunge($mbox);
imap_close($mbox,CL_EXPUNGE);
?>
Vielen Dank für Ihre Hilfe.
mfg
Andreas
Moin AG,
for($i=1;$i<=$anzahl;$i++){
$emailtext=imap_body($mbox,$i);
...weiterer Code zur Verarbeitung...
//Selbst doppelte Angabe des Löschen funktioniert nicht
imap_delete($mbox,$i);
$status=imap_setflag_full($mbox,"$i","\Deleted");
if(!$status) print imap_last_error();
}
imap_expunge($mbox);
imap_close($mbox,CL_EXPUNGE);
ich bin mir nicht sicher, ob in $i das Richtige steht.
Versuche es mal so:
while (list ($key, $val) = each ($headers))
{
$header = imap_header($mbox, $key+1, 1024, 1024);
...
...
...
imap_delete ($mbox, $key+1);
}
imap_expunge ($mbox);
imap_close ($mbox);
Gruß
Mike