EmailEncoding

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • EmailEncoding

    Gleich mal (@whasaga*richtig geschrieben?*)

    Hab lange selbst probiert und viel gesucht, komme nu aber echt net weiter. = private sache

    So, nun zum prob:

    hab nen imap-connect, kann auch die emails auslesen u.s.w. mein problem ist im mom die encodierung. wie kann ich feststellen, ob ich die mit base46 encoden muss oder nicht? sagt jetzt bitte nicht: "probiers mal mit imap_fetchstructure ( resource imap_stream, int msg_number [, int options] )
    "!
    Soweit war ich auch schon! ich krieg einfach den typ nich raus!
    Wie lese ich den aus dem header der mail?

    büüde um hilfe!
    Zuletzt geändert von dani_o; 23.12.2005, 14:05.
    Signatur-Text ...

  • #2
    Könnt ja mal schauen: MAILER . Das Auslesen geht ja nu ... aber halt nur normale textmails ... mehr nicht!
    Signatur-Text ...

    Kommentar


    • #3
      Ich hab mal ne komplette ausgabe gemacht, dass ist nur bei den Mails vom FOXMailer so! bei allen anderen kann ichs auslesen. Der Foxmailer kodiert das automatisch mit base64 ...
      Signatur-Text ...

      Kommentar


      • #4
        Danke für die Hilfe!
        Habe es nun so gelöst:

        PHP-Code:
               $struct imap_fetchstructure($mbox$mid);

               
        $parts $struct->parts;
               
        $i 0;

               if (!
        $parts) { /* Simple message, only 1 piece */
                 
        $attachment = array(); /* No attachments */
                 
        $content imap_body($mbox$mid);
               } else { 
        /* Complicated message, multiple parts */

                 
        $endwhile false;

                 
        $stack = array(); /* Stack while parsing message */
                 
        $content "";    /* Content of message */
                 
        $attachment = array(); /* Attachments */

                 
        while (!$endwhile) {
                   if (!
        $parts[$i]) {
                     if (
        count($stack) > 0) {
                       
        $parts $stack[count($stack)-1]["p"];
                       
        $i    $stack[count($stack)-1]["i"] + 1;
                       
        array_pop($stack);
                     } else {
                       
        $endwhile true;
                     }
                   }

                   if (!
        $endwhile) {
                     
        /* Create message part first (example '1.2.3') */
                     
        $partstring "";
                     foreach (
        $stack as $s) {
                       
        $partstring .= ($s["i"]+1) . ".";
                     }
                     
        $partstring .= ($i+1);

                     if (
        strtoupper($parts[$i]->disposition) == "ATTACHMENT") { /* Attachment */
                       
        $attachment[] = array("filename" => $parts[$i]->parameters[0]->value,
                                             
        "filedata" => imap_fetchbody($mbox$mid$partstring));
                     } elseif (
        strtoupper($parts[$i]->subtype) == "PLAIN") { /* Message */
                       
        $content .= imap_fetchbody($mbox$mid$partstring);
                     }
                   }

                   if (
        $parts[$i]->parts) {
                     
        $stack[] = array("p" => $parts"i" => $i);
                     
        $parts $parts[$i]->parts;
                     
        $i 0;
                   } else {
                     
        $i++;
                   }
                 } 
        /* while */
               
        /* complicated message */

               
        $content str_replace("\n","<br>",$content);
               echo 
        $content
        Signatur-Text ...

        Kommentar


        • #5
          Selbst nachdenken führt halt oft auch zum Ziel. Prima.

          Folgendes verwirrt mich (aus deinem Footer):
          "Programmierung und Design - ESUZ WebMailer - Agentur Obermaier (Im Auftrag von daphp.net)"
          Stehst bei beiden im Impressum ... beauftragst du dich selbst?

          Kommentar


          • #6
            So viel zum Thema private Sache. Sei doch wenigstens so fair...

            Kommentar

            Lädt...
            X