Ankündigung

Einklappen
Keine Ankündigung bisher.

Email Header und Alternativer Text...

Einklappen

Neue Werbung 2019

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

  • Email Header und Alternativer Text...

    Hi

    obwohl ich grad schon einen Thread ofen habe, spricht er das Thema nicht an, deswegen der neue Thread.

    Mein vorhaben: Ich möchte eine Email mittels "mail()" versenden. Diese Email soll eine HTML - Email sein (die Header dazu kenn ich auch schon). Ausserdem sollte ein alternativer Text versendet werden, falls die HTML-Email nicht akzeptiert wird. Wie geb ich sowas an???

    Eigentlich würde mir schon ein Link zu einer Doku, in der alle Möglichen Header für den Emailversand enthalten sind langen.

    Gruß
    bigJay


  • #2
    http://de3.php.net/mail

    Ausschnitt:
    PHP-Code:
    <?php
    //add From: header
    $headers "From: webserver@localhost\r\n";

    //specify MIME version 1.0
    $headers .= "MIME-Version: 1.0\r\n";

    //unique boundary
    $boundary uniqid("HTMLDEMO");

    //tell e-mail client this e-mail contains//alternate versions
    $headers .= "Content-Type: multipart/mixed; boundary = $boundary\r\n\r\n";

    //plain text version of message
    $body "--$boundary\r\n" .
       
    "Content-Type: text/plain; charset=ISO-8859-1\r\n" .
       
    "Content-Transfer-Encoding: base64\r\n\r\n";
    $body .= chunk_split(base64_encode("This is the plain text version!"));

    //HTML version of message
    $body .= "--$boundary\r\n" .
       
    "Content-Type: text/html; charset=ISO-8859-1\r\n" .
       
    "Content-Transfer-Encoding: base64\r\n\r\n";
    $body .= chunk_split(base64_encode("This the [b]HTML[/b] version!"));

    //send message
    mail("root@localhost""An HTML Message"$body$headers);
    ?>
    Wenn das E-Mail-Programm des Empfängers nun HTML akzeptiert müsste HTML angezeigt werden, ansonsten die Textversion.

    Kommentar


    • #3
      Eine bessere Alternative: phpMailer von http://phpmailer.sourceforge.net

      Gruß
      phpfan

      Kommentar


      • #4
        Ja hab ich schon gelesen.
        Warum ich frage: CIX88(der hier auch Mitglied ist) ferwendet bei seinem Script ausser den Headern die ich in der Doku finden konnte, noch andere, deswegen hat es mich interesiert welche Header es überhaupt gibt.
        Aber mitlerweile habe ich eine sehr gute doku gefunden

        Danke
        Gruß
        bigJay

        Kommentar


        • #5
          @phpfan: Jep kenn ich, finde es auch sehr gut. Wollte aber mich mal selber mit dem Thema befassen. Ich will ja nicht dumm sterben

          Kommentar


          • #6
            Dann hättest ja da in den Source reinschaun können *duck&wech*

            Kommentar


            • #7
              So, und da bin ich schon wieder

              Jetzt versuche ich es schon seit ein paar stunden zum laufen zu bekommen. Mache es mit:
              Code:
              Content-Transfer-Encoding: 8bit
              Da ich mir sagen lassen habe, dass dieses Codierungsverfahren das beste ist.
              Und das ist mal das Script was ich zusammengeschrieben habe:
              Code:
              <?php 
              $h = "MIME-Version: 1.0\r\n".
              	 "Content-type: multipart/mixed; boundary = 0d64a1fbe948a80b815899c6b7785c86 charset=iso-8859-1\r\n".
              	 "Content-Transfer-Encoding: 8bit\r\n".
              	 "From: Ein Name <absender@brr.de>\r\n";
              
              $b = "--0d64a1fbe948a80b815899c6b7785c86\r\n".
              	 "Content-Type: text/plain; charset=iso-8859-1\r\n".
              	 "Der Inhalt der Email als Text".
              
              	 "--0d64a1fbe948a80b815899c6b7785c86\r\n".
              	 "Content-Type: text/html; charset=iso-8859-1\r\n".
              	 "Der HTML formatierte Ihnhalt der Email";
              	mail("empfänger@brr.de", "Test Nachricht", $b, $h); 
              ?>
              Die Email sieht dann beim Empfänger leider so aus:
              --0d64a1fbe948a80b815899c6b7785c86
              Content-Type: text/plain; charset=iso-8859-1
              Der Inhalt der Email als Text--0d64a1fbe948a80b815899c6b7785c86
              Content-Type: text/html; charset=iso-8859-1
              Der HTML formatierte Ihnhalt der Email
              Ich wollte aber erreichen dass immer nur HTML oder TEXT angezeitg wird. Was stimmt den bei mir nicht?

              Danke
              bigJay

              Kommentar


              • #8
                Mein 1. Tipp: Du butterst zuviele Leerzeichen in den Header. Außerdem fehlt vor charset ein ; (bzw. nach dem boundary-Name). Ist aber echt ein Schusseligkeitsfehler (wenns denn daran liegt), vielleicht doch erstmal selbst oder vom Kollegen überprüfen, bevor du hier postest

                Kommentar


                • #9
                  Zitat von -->bigJay<--
                  Jetzt versuche ich es schon seit ein paar stunden zum laufen zu bekommen.
                  Ähm, eine Lösung habe ich auch nicht, da ich mich mit den Mailheadern noch nie rumgeärgert habe. Ich finde es nur witzig, wie man überhaupt auf die Idee kommt, sich damit rumzuschlagen. Wieso benutzt du nicht den phpMailer. Willst du unbedingt nur selbst geschriebene Scripte verwenden? Benutzt du auch kein phpMyAdmin? Wenn du den phpMailer sofort genommen hättest, wärst du schon seit Stunden fertig.

                  Gruß
                  phpfan

                  Kommentar


                  • #10
                    @Zergling: Also es lag daran:
                    PHP-Code:
                    <?php
                    "--0d64a1fbe948a80b815899c6b7785c86\r\n".
                         
                    "Content-Type:text/plain; charset=iso-8859-1\r\n\r\n".
                         
                    "Der Textliche Inhalt der Email[b][color=red]\r\n[/color][/b]"
                    ?>
                    Willst du unbedingt nur selbst geschriebene Scripte verwenden? Benutzt du auch kein phpMyAdmin?
                    Nein natürlich nicht. Und den phpMyAdmin verwende ich auch. Nur ich habe grad ein wenig zeit übrig um mich weiter zubilden. Und wenn ich mich mit diesen sachen mal auskenne bin ich ein wenig schlauer als du :wink:
                    Ähm, eine Lösung habe ich auch nicht, da ich mich mit den Mailheadern noch nie rumgeärgert habe
                    Achso: Ich bekomme jetzt den Text/Plain inhalt als Anhang, kann man das vermeiden???

                    Gruß
                    bigJay

                    Kommentar


                    • #11
                      Zitat von -->bigJay<--
                      Willst du unbedingt nur selbst geschriebene Scripte verwenden? Benutzt du auch kein phpMyAdmin?
                      Nein natürlich nicht. Und den phpMyAdmin verwende ich auch. Nur ich habe grad ein wenig zeit übrig um mich weiter zubilden. Und wenn ich mich mit diesen sachen mal auskenne bin ich ein wenig schlauer als du :wink:
                      rofl ^^ n1

                      Zitat von -->bigJay<--
                      Aber mitlerweile habe ich eine sehr gute doku gefunden
                      willst nedmal den link posten?

                      mfg Niedi
                      http://forum.developers-guide.net

                      Klick dich REICH:
                      http://www.klick-reich.de/index2.php...lden&ref=Niedi

                      Kommentar


                      • #12
                        UPS den hab ich jetzt wohl vergessen email (header)
                        bitte schön

                        Kommentar


                        • #13
                          Wieso ist die Seite sehr gut? Grad bei deinem Problem hilft sie dir ja eigentlich nicht weiter ..

                          Kommentar


                          • #14
                            Naja um mein Problem ging es am Anfang ja gar nicht. In dem erstem Posting dieses Threads, wollte ich einen Link zu einer Doku haben, welche Aufklärung zu den Email-Headers liefert. Und das ist eben die beste die ich finden konnte. Und deswegen sehr gut, weils "keine bessere" gibt.

                            Kommentar


                            • #15
                              Zitat von -->bigJay<--
                              Nur ich habe grad ein wenig zeit übrig um mich weiter zubilden.
                              Ganz ehrlich, finde ich prima, dass du das machst. Aber gibt es wirklich nichts "sinnvolleres", was du lernen kannst?

                              Mir soll's egal sein, ist ja nur gut gemeint. Warum sich mit Sachen beschäftigen, die man nicht braucht?

                              Gruß
                              phpfan

                              Kommentar

                              Lädt...
                              X