Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Identyfikacja wiadomości e-mail
Forum PHP.pl > Forum > PHP
mike
Witam,

Prosze Was o poradę.
Postanowiłem napisać aplikację do zarządzania skrzynką pocztową. Taki Outlook poprzez przeglądarkę winksmiley.jpg
Aplikacja w zasadzie bardzo prosta, bo obejmująca:
-- wysyłanie maila (wszelkie postacie, bbc, ..., i wszystko co z tym się wiąże);
-- pobieranie wiadomości email ze skrzykni (dodatkowo obsługa wielu skrzynek);
-- zarządzanie książką adresową;
-- grupowanie w foldery
-- jeszcze pare opcji

Największy czas wykonania to pobranie wiadomości z serwera POP/IMAP dlatego naturalną dezyzją jest zapisanie ich w bazie danych i pobieranie tylko podczas pierwszego uruchomienia oraz na wyraźne żądanie (jakis button Pobierz)

I teraz na czym polega problem?
Jak identyfikowac wiadomości? Skąd mam wiedzieć że tą pobrałem a drugiej jeszcze nie bo jest nowa. Czy wiadomości zawieraja jakiś unikalny identyfikatow, według którego mógłbym je identyfikować?
NuLL
O ile ja pamietam wiadomosci na serwerze pocztowym maja flagi, ale musisz dokladnie przebac dokumentacje IMAP-a dla php tam powinno byc cos o tym smile.gif Pisalem kiedys cos takiego ale niewiele z tego pamietam.
__nvm
wlasnie.. bylbym zainteresowany stworzeniem systemu webmail'a `od zera` - jakies faq sa dostepne na ten temat, czy trzeba wszystko po kawalku zbierac?
mike
Cytat(__nvm)
(...) jakies faq sa dostepne na ten temat, czy trzeba wszystko po kawalku zbierac?
Zacznij od tego: phpsolmag.org -> artykuły online -> Klient poczty elektronicznej przez WWW. To Ci pomoże ugryść temat.

Cytat(NuLL)
(...) wiadomosci na serwerze pocztowym maja flagi (...)
Tak wiem, znam temat flag. Dostępne to:
- Recent
- Unseen
- Answered
- Deleted
- Draft
- Flagged
(flagi dostępne w php dzięki imap_headerinfo(), mówię w php bo RFC 2060 mówi o innych flagach)

Z tego co piszą to nowa wiadomość posiada flagi: Unseen == 'U' || Recent == 'N'
I to powinno działać :-)

Ale co w sytuacji kiedy część wiadomości została przeczytana w innym kliencie pocztowym niż mój?
Mój przegądając nagłówki listy wiadomości i tak powinien wykryć takie wiadomości (przeczytane gdzie indziej).
Czy poleganie na flagach mnie mnie zgubi? Raczej tak.

Dlatego zacząłem się zastanawiać czy istnieje jakiś inny sposób.
cadavre
Jeśli 'zalążki' masz zapisywane do bazy to przypisz w polu obok wartość 1 dla nieprzeczytanych oraz 0 dla przeczytanych czy też na odwrót.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.