mailversandt mit anhang ...

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

  • mailversandt mit anhang ...

    hallo forianer,

    hat irgendjemand von euch eine ahnung wie ich mit der mail()-funktion mails mit anhang versende ? oder brauch ich da vielleicht ne andere funktion ?
    naja, ich will einfach nur ein paar logs per mail verschicken aber nich im stino-text format sondern als anhang ...
    danke im vorraus

    phil

  • #2
    Mit der Suchfunktion hätten sie das gefunden : http://www.php-resource.de/forum/sho...p?threadid=944

    Nicht verzagen sieht difizil aus ist aber dann doch einfach als es aussieht

    Kommentar


    • #3
      Die mail()-Funktion alleine kann das nicht.
      Der erste link auf http://www.phpwizard.net/resources/phpMisc/
      bietet eine schöne kleine Klasse für die Aufgabe.

      Kommentar


      • #4
        hey danke, gesucht hatte ich vorher, naja hab wohl nich richtig geguckt, danke euch :-)

        Kommentar


        • #5
          fuck, das klaptioniert nicht ... hab folgenden code benutzt:

          $boundary = strtoupper(md5(uniqid(time())));
          $file = chunk_split(base64_encode($file));

          $mail_header .= "\nMIME-Version: 1.0";
          $mail_header .= "\nContent-Type: multipart/mixed; boundary=$boundary";
          $mail_header .= "\n\nThis is a multi-part message in MIME format -- Dies ist eine mehrteilige Nachricht im MIME-Format";
          $mail_header .= "\n--$boundary";
          $mail_header .= "\nContent-Type: text/plain";
          $mail_header .= "\nContent-Transfer-Encoding: 8bit";
          $mail_header .= "\n\n$Hier_der_normale_Text_der_Email";
          $mail_header .= "\n--".$boundary;
          $mail_header .= "\nContent-Type: image/jpeg; name=\"".$wirklicher_filename."\"";
          $mail_header .= "\nContent-Transfer-Encoding: base64;
          $mail_header .= "\nContent-Disposition: attachment; filename=\"".$wirklicher_filename."\"";
          $mail_header .= "\n\n".$file;

          so, was ist $file ? was ist $boundary ? und wie muss ich das ganze abändern, wenn ich nur eine textdatei versenden möchte ?
          danke im vorraus

          Kommentar


          • #6
            $file ist wohl einmit fopen() geöffneter File-link!

            Kommentar


            • #7
              hm, ok hab ich abgeändert klappt aber immernoch nicht. ist es vielleicht falsch $mail_header an mail() zu übergeben ?
              weil die mail die ankommt, hat den inhalt von $mail_header und keinen anhang

              Kommentar


              • #8
                nein, $file ist der Inhalt der Datei ... den bekommst du mit

                $f = fopen($filename);
                $file = fread($f, filesize($filename));
                fclose($f);
                mein Sport: mein Frühstück: meine Arbeit:

                Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                Kommentar


                • #9
                  hm, hab ich auch geändert, der schickt immernoch den mailheader als text in der mail raus ... ohne anhang :-(

                  Kommentar


                  • #10
                    Wenn du keine sonstigen Header (wie From oder Reply-To) hast, dann entfern mal den Punkt und das \n in der ersten mail_header-Zuweisung.
                    mein Sport: mein Frühstück: meine Arbeit:

                    Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                    Kommentar


                    • #11
                      hey, jetz wird zumindest eine mail mit anhang versandt und der mailheader verschwindet auch im mailtext aber die verschickte datei hat noch keinen inhalt. $file ist der inhalt aus meiner textdatei ...

                      Kommentar


                      • #12
                        Also ich hab mal wieder den zweiten Parameter beim fopen vergessen (muß 'rb' sein), aber warum dein Attachment null Inhalt hat, raff ich jetzt auch nicht.
                        mein Sport: mein Frühstück: meine Arbeit:

                        Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                        Kommentar


                        • #13
                          yeah, it workz !!!! ok, der fehler lag darin, dass ich die datei geöffnet habe, reingeschrieben und sofort danach wieder ausgelesen hab ohne zwischendurch zu flushen von daher hatte ich keinen inhalt im anhang :-)
                          ich danke euch allen, ihr habt mir das leben gerettet ;-)

                          Kommentar

                          Lädt...
                          X