PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PHP4: SMTP- und POP3-Funktionen?


mf_2
2004-06-19, 14:44:27
Hallo,

Gibt es POP3-Funktionen für PHP4 um eMails von einem POP3-Server abzuholen? ich kenne nur mail() und das versendet nur mails über smtp, ich will aber mails abrufen, löschen etc. Ich will mir ein Webinterface für eine eMail addresse bauen.
Gibt es da irgendwo so ein PHP-Plugin dafür?
Also bei PHP4 in der normalen Version sind solche Funktionen afaik nicht dabei, aber man kann ja auch plugins installieren.
Kennt ihr was in der Richtung?

Danke im Voraus,

mf_2

Matthias2x
2004-06-20, 11:03:04
eigentlich sollte PHP schon die IMAP-Funktionen mitbringen. mit den imap-Funktionen kannst du POP3-Postfächer problemlos abholen, ich verwende das z.b. derzeit um per SMS einen Liveticker zu bedienen (sms->pop3->liveticker). schau einfach mal ins php-manual und suche nach "imap_open" ...

EDIT: siehe z.b. auch hier -> http://de2.php.net/imap_open

mf_2
2004-06-24, 17:23:49
Hallo,

Ich hab die IMAP-Funktionen mittlerweile zum Laufen bekommen.
Nun aber eine andere Frage: Kennt jemand die Belegung des Arrays, das imap_headers() zurückgibt? array[0][0] ist z.b. die erste email und ein flag ob die mail gelesen oder ungelesen ist. aber was ist array[0][1]? und: wieviele felder gibt es pro nachricht?

Matthias2x
2004-06-24, 19:20:41
Original geschrieben von mf_2
Hallo,

Ich hab die IMAP-Funktionen mittlerweile zum Laufen bekommen.
Nun aber eine andere Frage: Kennt jemand die Belegung des Arrays, das imap_headers() zurückgibt? array[0][0] ist z.b. die erste email und ein flag ob die mail gelesen oder ungelesen ist. aber was ist array[0][1]? und: wieviele felder gibt es pro nachricht?

folgendes sollte dir den Inhalt des Arrays ausgeben:

<?php
$pop3_server = "pop.mailserver.de"; //Pop3-Server eingeben
$postfach = "meinpostfach"; //Postfach eingeben
$passwort = "meinpasswort"; //Passwort eingeben
$mbox = imap_open ("{".$pop3_server."/pop3:110)INBOX",$postfach,$passwort);
$headers = imap_headers ($mbox);
echo '<pre>';
print_r($headers);
echo '</pre>';
?>

imap_headers(); gibt dir allerdings nur einen überblick über die Nachrichtenköpfe aller gespeicherten Mails. den Rest mußt du anders auslesen. schau mal ins PHP-Manual, dort sind alles relevanten Funktionen recht gut beschrieben.

mf_2
2004-06-24, 20:15:19
Hallo,

Das ist zwar auch ein ganz interessantes Script, aber ich meinte etwas anderes:

Welche mailinfo ( betreff, datum etc. ) steht denn z.b. in $headers[irgendeinezahl][3]? Und wieviele arrayfelder gibt es?

winter
2004-06-25, 21:32:50
Danke für die Hilfe, MF und ich haben heute das Problem mit imap_headerinfo() gelöst, welche ein Objekt über die gewählte Nachricht ausgibt. Dies ist wirklich sehr praktisch, da so sehr viele informationen über die Mails abgerufen werden können. Ich empfehle allen interessierten, unter http://www.php.net die funktion nachzuschlagen und zu testen! Glücklicherweise funktioniert sie sowohl über POP3 als auch über Imap