[ Dejan Krstic @ 02.08.2003. 17:50 ] @
Da li neko zna kako mogu email poruku da rastavim na proste cinioce? Znaci imam celu email poruku u jednoj promenljivoj. Pokupio sam je sa pop3 servera. Nisam koristio imap funkcije php-a nego sam rucno uradio.

Jos nesto.... kako da pokupim samo poruku bez attachmenta?
[ mikis @ 02.08.2003. 18:59 ] @
Nisam pokušavao, ali ne bi trebalo da bude komplikovano. Telo poruke je odvojeno od zaglavlja sa dva znaka za novi red (odnosno jednim praznim redom). Zaglavlje ne može sadržati prazne redove. Sva polja u zaglavlju su oblika
polje: vrednost
a ako neka vrednost prelazi u novi red, odvojena je od početka reda razmakom ili tabom.
[ Dejan Krstic @ 02.08.2003. 19:45 ] @
Hvala za ovo.

A sta da radim sa telom poruke? Kako ako imam attachment da pokupim samo text? I sta ako je multipart?
[ leka @ 02.08.2003. 23:30 ] @
Predlažem da probaš gotovu klasu za to, koja se nalazi na http://phpclasses.upperdesign.com . Tamo postoji kategorizacija klasa, i u E-Mail delu se nalazi ta klasa, a mislim da je Manuel Lemos autor. Klasa je ODLIČNA.
[ leka @ 02.08.2003. 23:39 ] @
Citat:
Dejan Krstic:
A sta da radim sa telom poruke? Kako ako imam attachment da pokupim samo text? I sta ako je multipart?

Odgovor verovatno i sam znaš - moraš imati base64 enkod/dekod klasu. Moraš imati klase za parsiranje poruka (prema standardu koji se nalazi lepo opisan u nekoliko RFC-ova).
[ Goran Rakić @ 02.08.2003. 23:50 ] @
Sa servera svakako moraš pokupiti celu poruku, a onda je naknadno obraditi. Prilog je sastavni deo poruke i to tek klijenti rastavljaju.
[ Dejan Krstic @ 03.08.2003. 01:29 ] @
A sta ako imam attachment od 10mb? Koja variabla moze da primi toliko podataka? Drugim recima gde da svucem tu poruku?
[ CONFIQ @ 03.08.2003. 01:36 ] @
Promenljive u PHPu mogu da imaju po GB-tima. U opšte nije važno kolko KB stavljaš u promenljive. Oću da kažem da nemaš ogranićenja u tome ali rad sa velikim fajlovima se „troši” RAM.

Inače što se tiče E-maila i attachmen-ovima sa 10MB. Ako radiš ma mašinama koji imaju veoma dobar LINK, 10MB ne bi trebalo da bude veliki problem. Mislim da je 90 sekundi dovoljno da se skine 10MB. Pod ostalom sa ini_set(); funkcijom možeš da staviš max_execution_time više od 90 sekundi.

~Say FiQ
[ Goran Rakić @ 03.08.2003. 01:45 ] @
Mozda ima neka fora da citas redom poruku i da kada naletis na novi deo multipart-a (on u zaglavlju valjda pise da pocinje tu i zavrsava tu) i detektujes da je to prilog, ti lepo cupneš na sledeći deo. E sada fflush i fseek u sockets ne radi, jedino što možeš je da ignorišeš taj deo, ali ako server to pošalje, moraš i ti da primiš, samo možeš da štediš RAM servera i to preskočiš.
[ Dejan Krstic @ 03.08.2003. 16:26 ] @
Citat:
CONFIQ:
Promenljive u PHPu mogu da imaju po GB-tima. U opšte nije važno kolko KB stavljaš u promenljive. Oću da kažem da nemaš ogranićenja u tome ali rad sa velikim fajlovima se „troši” RAM.

Inače što se tiče E-maila i attachmen-ovima sa 10MB. Ako radiš ma mašinama koji imaju veoma dobar LINK, 10MB ne bi trebalo da bude veliki problem. Mislim da je 90 sekundi dovoljno da se skine 10MB. Pod ostalom sa ini_set(); funkcijom možeš da staviš max_execution_time više od 90 sekundi.

~Say FiQ


Masina ima odlican link i nije problem da se svuce desetak mb za par sekundi nego sam mislio da bi php pravio problem sa tolikim podacima. A i glupo mi zvuci da svlaci tolike podatke u neku promenljivu ako ja necu da skidam to.

Imao sam ideju da procitam samo text poruke i to ispisem. A onda ispod toga da stavim link za attachment pa ako hocu da skidam ceo attachment da kliknem na njega. Ali izgleda da je nemoguce to uraditi jer sam sada gledao pop3 specifikacije i tamo ne postoji ni jedna komanda koja bi izvukla/odvojila text od attachmenta. Jedino resenje za ovo sto ja hocu je imap ali to ne mogu da koristim jer imam samo pop3.
[ Dejan Krstic @ 03.08.2003. 17:49 ] @
OK sve sam sada ukapirao. Jedino me jos buni deo samog tela poruke. Znaci umem da odvojim header od bodyja i da header rastavim.

Takodje umem da se snadjem i kada se body sastoji od cistog texta ali ne umem da se snadjem sa multipart porukama.

Npr.

------_=_NextPart_001_01C30A77.E0B37870
Content-Type: multipart/alternative;
boundary="----_=_NextPart_002_01C30A77.E0B37870"


Sta je ovo?
[ mikis @ 03.08.2003. 20:50 ] @
Pa to ti je "graničnik" koji razdvaja delove tela poruke.