Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » PHP » mail/ text und attachment lokal speichern

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
05.11.2004, 18:47 Uhr
Coder
BadBoy4Ever


Hallo,

versuche eine Funktion zu basteln, die mir eine Verbindung zu einem IMAP-Konto herstellt, die dort hinterlegten Mails nach bestimmten Wörtern durchsucht (sowas wie ein Spamfilter) und falls die Emails, diese bestimmten definierten Wörter, nicht enthalten, sollen die Emails als Textdatei in den Ordner "Mails" und das Attachment in den Ordner "Attachment" , auf meinem PC gespeichert werden.
Die verbindung zum IMAP-Konto, habe ich hinbekommen. Nur habe ich jetzt das Problem, den Inhalt vom Mailheader zu durchsuchen und das Attachment zu speichern.
Ich kann mir den Namen, das Empfangsdatum und den Betreff der Mails, mit meinem Script ausgeben lassen, nicht aber das attachment oder den Text der Mail. Die Mails nach einem String zu durchsuchen, dürfte auch kein Problem sein, sobald ich weiß, wie ich auf den Emailheader zugreifen kann.
Kann mir da jemand weiterhelfen?

mfg Coder
--
- Zitat: es ist nicht wichtig was eine Frau sagt, wichtig ist nur dass sie gut dabei aussieht - Quelle unbekannt
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
05.11.2004, 18:58 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


wie greifst du auf die email zu?

Da die imap-funktionen (glaube) keine mail-parserfunktionen enthalten, musst du dir einfach den kompletten emailinhalt (eine der imap_* funktionen liefert dir das) holen und dann manuell parsen. Die Header kannste dir ja eben über die Funktionen ausgeben lassen, auch wenn diese nicht alle liefern


Bearbeitung:

imap_body liefert dir den text+attachment (ungeparst),
imap_header liefert dir die header (ungeparst)


--
class God : public ChuckNorris { };

Dieser Post wurde am 05.11.2004 um 19:00 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
06.11.2004, 17:34 Uhr
Coder
BadBoy4Ever


Hallo,

danke für die Hilfe, bin jetzt weitergekommen, kämfe aber noch mit dem Speichern vom Attachment.
Den Mailinhalt zeigt er mir an, aber das Attachment sie so aus: /9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsK...........
Im Attachment befindet sich ein Bild habe auch versucht es Base64 zu dekodieren, aber dadurch kommt nur anderer Buchstabensalat. Also wie man das Attachment speichern kann, da komme ich irgendwie nicht dahinter
--
- Zitat: es ist nicht wichtig was eine Frau sagt, wichtig ist nur dass sie gut dabei aussieht - Quelle unbekannt
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
06.11.2004, 20:16 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


hi du musst diesen "Buchstabensalat" durch base64_decode jagen, und dessen outpu speichern. Aber du musst die Header des attachments erst wegfiltern (also das "Content-Type: ..." usw da steht auch "Content-Transfer-Encoding" und da musste schaun, gibt auch andere als base64
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
07.11.2004, 11:51 Uhr
Coder
BadBoy4Ever


ja, aber bei *.jpg muss ich doch base64 dekodieren, oder? Habe alle Header weggefiltert und nur den Buchstabensalat base64 dekodiert, klappt aber immer noch nicht richtig

mfg Coder
--
- Zitat: es ist nicht wichtig was eine Frau sagt, wichtig ist nur dass sie gut dabei aussieht - Quelle unbekannt

Dieser Post wurde am 07.11.2004 um 11:53 Uhr von Coder editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
07.11.2004, 12:08 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


bei mir schaut das z.b so aus:


PHP 4:
function Decode_Body($header, $string)
{
  $string = Mail_MIME_Decode($string);
  switch(trim($header['content_encoding']))
  {
  case "quoted-printable":
    return quoted_printable_decode($string);
  case "base64":
    return base64_decode($string);
  }
}

function Mail_MIME_Decode($string)
{
  $text = imap_mime_header_decode($string);
  $string = "";
  for($x = 0; $x < count($text); $x++)
    $string .= $text[$x]->text;
  return $string;
}



und in $header sind die geparsten header-zeilen drin.
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
07.11.2004, 14:37 Uhr
Coder
BadBoy4Ever


hmm, jetzt kriege ich nur:ÿØÿà raus. Aber wenn ich diesen Text als datei mit der Endung .jpg speichere, dann kann ich sie nicht öffnen

mfg Coder
--
- Zitat: es ist nicht wichtig was eine Frau sagt, wichtig ist nur dass sie gut dabei aussieht - Quelle unbekannt
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
07.11.2004, 15:43 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


hmm zeig mal deinen code, vll haste einen fehler drin (und mal ne beispiel mail)
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
08.11.2004, 14:38 Uhr
Coder
BadBoy4Ever


Habs jetzt hinbekommen, lag daran , dass man bei *.jpg Dateien dieses Mail_MIME_Decode(base64_decode($string)); nicht einsetzen sollte, denn sonst funktioniert es nicht.

Aber wie kriege ich jetzt die Anzahl und die Namen der Attachments, die bei einer Mail angehängt sind raus?

mfg Coder
--
- Zitat: es ist nicht wichtig was eine Frau sagt, wichtig ist nur dass sie gut dabei aussieht - Quelle unbekannt
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
08.11.2004, 19:42 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


mail-"text" parsen
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ PHP ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: