Toon posts:

[php] Imap, body fetchen...?¿

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben bezig met een stukkie Imap, om eens wat mailtjes binnen te halen...

Nou lukt de connectie, aantal mailtjes etc. wel. Maar om specifiek de body eruit te fetchen, de tekst dus. Dat wil maar niet lukken.

'k heb op php.net gekeken, daar zijn 2 grote codes, waarmee je het er uit kunt halen. Maar het is mij nog niet gelukt om dmv die functies de body eruit te trekken...

Weet iemand misschien wel hoe dit wel moet? (zie ook: http://www.php.net/manual/en/function.imap-fetchbody.php)

Alvast bedankt.

  • Baxlash
  • Registratie: Juni 2000
  • Niet online

Baxlash

Its a boy Genius!

Op maandag 25 maart 2002 19:42 schreef Markuz het volgende:
Ik ben bezig met een stukkie Imap, om eens wat mailtjes binnen te halen...

Nou lukt de connectie, aantal mailtjes etc. wel. Maar om specifiek de body eruit te fetchen, de tekst dus. Dat wil maar niet lukken.

'k heb op php.net gekeken, daar zijn 2 grote codes, waarmee je het er uit kunt halen. Maar het is mij nog niet gelukt om dmv die functies de body eruit te trekken...

Weet iemand misschien wel hoe dit wel moet? (zie ook: http://www.php.net/manual/en/function.imap-fetchbody.php)

Alvast bedankt.
Die codes zijn goeie voorbeelden. Waar op welk punt op die codes loop je precies vast?

Verwijderd

Topicstarter
Op maandag 25 maart 2002 19:53 schreef rolandketel het volgende:

[..]

Die codes zijn goeie voorbeelden. Waar op welk punt op die codes loop je precies vast?
Ik krijg ze niet werkend, er komt geen error, er gebeurt dan gewoon niets...

Ik denk bijna wel zeker dat dat komt doordat ik niet elke variabele die je nodig hebt 'kan invullen'...

Bijv.: $msg_number, duidelijk het nummer van het bericht, maar... waar haal ik die vandaan? Via imap_msgno(); misschien? Maar hoe je die gebruikt, dat snap ik ook weer niet geheel, omdat je daar weer een UID nodig hebt, die je weer via een andere functie eruit haalt, die weer afhangt van imap_msgno(); (als ik het goed heb begrepen)

Verwijderd

lol, toevallig ben ik daar ook mee bezig en mij is t wel gelukt >:) ... maar uh..post s wat je nu hebt.. let wel, dat msgno niet vanaf 0 (zoals normaal is) maar vanaf 1 begint te tellen, net als t body part.

Verwijderd

Topicstarter
Op maandag 25 maart 2002 20:27 schreef DarthRaider het volgende:
lol, toevallig ben ik daar ook mee bezig en mij is t wel gelukt >:) ... maar uh..post s wat je nu hebt.. let wel, dat msgno niet vanaf 0 (zoals normaal is) maar vanaf 1 begint te tellen, net als t body part.
PHP:
1
<?$gebruiker = "mark";$paswoord = "w8w00rd";$mailserver = "mail.phpkeez.nl:110/pop3";$connectie = imap_open("\{$mailserver}INBOX",$gebruiker,$paswoord,OP_READONLY);echo "<p>Er zijn <b>" . imap_num_msg($connectie) . "</b> nieuwe berichten.</p>";$headers = imap_headers($connectie);while(list ($key,$val) = each ($headers)) {$i++;$body = imap_body($connectie, $i);$body = str_replace("\n","<br>\n", $body);echo "$body";}imap_close($connectie);?>

Hiermee heb ik dus nog enkel de headers...

Verwijderd

met imap_body krijg je de hele body met alle evt. parts. met imap_fetchbody kun je de verschillende body parts eruit halen, welke je dan weer moet decoden als dat gedecodeerd is.

Verwijderd

Topicstarter
Op maandag 25 maart 2002 20:37 schreef DarthRaider het volgende:
met imap_body krijg je de hele body met alle evt. parts. met imap_fetchbody kun je de verschillende body parts eruit halen, welke je dan weer moet decoden als dat gedecodeerd is.
Ok, maar dan is de vraag: 'Hoe?'

Verwijderd

Op maandag 25 maart 2002 20:38 schreef Markuz het volgende:

[..]

Ok, maar dan is de vraag: 'Hoe?'
met imap_fetchstructure kun je de structuur van een mailtje opvragen.
PHP:
1
<?$structure = imap_fetchstructure([argumenten]);echo $structure->parts; // tada?>

Verwijderd

Topicstarter
Hmmm, ik heb 'em al, relaxed :)

Moest gewoon ff imap_fetchbody(); gebruiken en het 'string part' invullen...

Maar nu dus nog idd, de andere delen van een/het E-mail bericht...

Verwijderd

t valt op zich best nog wel mee :) misschien dat je hier ook nog wat aan hebt: http://www.faqs.org/rfcs/ en dan o.a. RFC2060

Verwijderd

Topicstarter
Op maandag 25 maart 2002 20:41 schreef DarthRaider het volgende:

[..]

met imap_fetchstructure kun je de structuur van een mailtje opvragen.
PHP:
1
<?$structure = imap_fetchstructure([argumenten]);echo $structure->parts; // tada?>
Hmmm, ok...

Maar dan krijg ik dus van $structure->parts een array als output... Maar hoe trek ik de info daarvan uit?

Dit is iets nieuws voor me, een object als array(?)

Verwijderd

Topicstarter
Ok, ik ben er al ongeveer uit..

Maar nu nog een schoonheids probleempje...

Ik kan nu het onderwerp, het bericht, de headers etc. eruit halen. Maar... Nu komt er regelmatig =20 achter een bepaalde regel.

1 - Waarom is dat? (als je dit misschien weet)
2 - Hoe haal je dat het beste weg?

Verwijderd

dit soort vragen beginnen vrij basic te worden en t kan zijn dat een modje zich weleens daaraan zou kunnen storen (me ICQ# staat in me profile).

t is gewoon een array in een array. Verder eerst even goed kijken he :)

Verwijderd

Op maandag 25 maart 2002 20:53 schreef Markuz het volgende:
Ok, ik ben er al ongeveer uit..

Maar nu nog een schoonheids probleempje...

Ik kan nu het onderwerp, het bericht, de headers etc. eruit halen. Maar... Nu komt er regelmatig =20 achter een bepaalde regel.

1 - Waarom is dat? (als je dit misschien weet)
2 - Hoe haal je dat het beste weg?
check de content-transfer-encoding van dat part eens :)
Pagina: 1