base64-Attachments automatisch decodieren

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

  • base64-Attachments automatisch decodieren

    Hallo Leute!
    ich hoffe, ich werde nicht wieder ausgemeckert, aber heute habe ich vorher gesucht! Habe aber nichts gefunden, deshalb mussch wirklich hier fragen... (Na, hab schon was gefunden, aber macht mich nicht satt)

    1. Wenn ich ein base64-kodiertes Attachment verschicke, wird das auch kodiert angezeigt. Wie kann ich das automatisch dekodieren? Da gibts wohl irgendwie einen decode-Befehl. Aber wie sieht das aus und wo muss ich den einbinden?

    2. Wie kann ich 2 Attachments verschicken? Ich weiß, dass ich ein 2. als weiteren header anhängen kann, aber wie läuft das mit der Kodierung? Wenn ich zwei kodierungs-Routinen unterienanderklebe, hagelts Fehler. Hänge ich unter eine Routine aber noch eine zweite zu kodierende Variable, wird diese nicht transportiert.

    Danke schonmal!.
    HE

    Ach, is wohl sinnvoll, wenn ich meinen Code reinklebe...

    PHP-Code:
    $body=
    # 1.Teil, der Text der Mail [text/plain]
        
    "--BOUND\r\n"
        
    ."Content-Type: text/plain; charset=iso-8859-1 \r\n"
        
    ."Content-Disposition: inline \r\n"
        
    ."Content-Transfer-Encoding: 7bit \r\n"
        
    ."\r\n"
        
    ."$nachricht \r\n"
        
    ."\r\n"

    # 2.Teil
    # 1. Attachment der Mail
        
    ."--BOUND\r\n"
        
    ."Content-Type: application/msword; name=\"Bestandsprotokoll\" \r\n"
        
    ."Content-Description: \"Word-Dokument\" \r\n"
        
    ."Content-Transfer-Encoding: base64 \r\n"
        
    ."Content-Disposition: attachment \r\n"
        
    ."\r\n"
    # Hier hab ich versucht, beide Attachments in einem Abwasch zu kodieren
        
    ."$attachment1 \r\n"
        
    ."$attachment2 \r\n"
        
    ."\r\n"
        
    ."--BOUND \r\n";

    #und hier der Versuch, ein zweites Kodierungsdings laufen zu lassen
    /*
        ."--BOUND\r\n"
        ."Content-Type: application/msword; name=\"Umzugsgutliste\" \r\n"
        ."Content-Description: \"Word-Dokument\" \r\n"
        ."Content-Transfer-Encoding: base64 \r\n"
        ."Content-Disposition: attachment \r\n"
        ."\r\n"
        ."$attachment2 \r\n"
        ."\r\n"
        ."--BOUND \r\n";
    */ 
    Zuletzt geändert von Highexplosive; 29.07.2002, 16:46.

  • #2
    beide attachments in einen contentabschnitt zu packen wird nichts. das sollte dir auch jeder email-client melden.

    splitte die gesamte mail am besten nach dem boundary auf und nimm dir die jeweiligen bereiche, die attachments enthalten. diesen teilst du wiederum nach header und body auf (durch doppel-newline getrennt). dann nimmst du aus diesem body wiederum sämtliche newlines heraus und du erhälst einen string, den du durch base64_decode() dekodieren kannst. und so machst du das für alle einzelnen attachment-bereiche in der mail.

    Kommentar


    • #3
      Hallo nimbus!Ich verstehe das nicht richtig. Kannst du mal nen Codeblock von mir rauskopieren und als Beispiel verändern??
      Danke,
      HE

      Kommentar

      Lädt...
      X