Ankündigung

Einklappen
Keine Ankündigung bisher.

Umlaute in Formular

Einklappen

Neue Werbung 2019

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

  • David
    antwortet
    Und die Reihenfolge stimmt nicht.

    Mit SwiftMailer sähe das so aus
    PHP-Code:
    <?php
    require_once "lib/Swift.php";
    require_once 
    "lib/Swift/Connection/NativeMail.php";

    $swift = new Swift(new Swift_Connection_NativeMail());

    $message = new Swift_Message("ein Test");
    $message->setCharset('utf-8');
    $message->setBody("äöü");
     
    if (
    $swift->send($message"empfaenger@xyz""from@mydomain.com"))
    {
      echo 
    "Sent";
    }
    else
    {
      echo 
    "Failed";
    }


    Swift Mailer - A free feature-rich PHP Mailer

    Einen Kommentar schreiben:


  • Manko10
    antwortet
    Ohne Zeilenumbruchszeichen geht gar nichts. Die letzten Header unterscheiden sich in der Notation nicht von den ersten (sollten sie zumindest nicht).

    Einen Kommentar schreiben:


  • cuep
    antwortet
    Danke erst mal für die schnellen Antworten.
    Habe den header wie folgt geschrieben
    Code:
     
    $header =  'From: absender@xyz.de' . "\r\n" .     
                   'Reply-To: antwort@xyz.de' . "\r\n" .     
                   'Content-Type: text/plain; charset=utf-8' .
                   'Content-Transfer-Encoding: 8bit' .
                   'MIME-Version: 1.0';
    Ist die Syntax so in Ordnung?

    Gruß

    CueP

    Einen Kommentar schreiben:


  • David
    antwortet
    Und das in der richtigen Reihenfolge, nach den MIME-Regeln und ohne Schreibfehler.
    Und deshalb vielleicht doch lieber eine Bibliothek verwenden?
    Eine, mit der man auch leicht HTML Mails verschicken kann? Und mit der man auch Mail-Server, die eine sichere Verbindung/Authentifizierung erfordern, benutzen kann? Und sinnvolle Fehlermeldungen erhält (ohne die Logdateien der Mailserver einsehen zu müssen)? Also alles Gründe, die gegen mail() sprechen.
    Wenn ich eine Streichliste für php6 erstellen könnte, würde mail() neben register_globals und maig_quotes stehen

    Einen Kommentar schreiben:


  • Manko10
    antwortet
    Content-Transfer-Encoding sollte rein, sonst geht der SMTP-Server weiterhin von 7bit aus und nicht von den erforderlichen 8.
    Mit
    Code:
    Content-Type: text/plain; charset=utf-8
    Content-Transfer-Encoding: 8bit
    fahre ich eigentlich immer ganz gut (in allen Clients), sonst evtl. noch den Header
    Code:
    MIME-Version: 1.0
    setzen.

    Einen Kommentar schreiben:


  • David
    antwortet
    Das accept-charset hast Du so
    Code:
    <form accept-charset="ISO-8859-1" action=...
    versucht?

    Zitat von cuep Beitrag anzeigen
    Probiere erst mal das mit dem Content-Transfer-Encoding: 8bit bzw. Content-Transfer-Encoding: base64
    Auch das ist MIME.

    Einen Kommentar schreiben:


  • cuep
    antwortet
    Okay ich glaube das ist wohl doch ne größer Sache.
    Du hast recht ich habe nicht geschaut was Swiftmailer ist .
    Hatte nur das mit dem "Content..." probiert eben.
    Ich teste das ganze über web.de nur zur Info falls das wichtig ist.
    Habe schon einige Varianten im Netz gelesen wie das schon angesprochen accept-charset in dem Form Tag.
    Kannst du mir eine Seite empfehlen, wo ich mich mal den ganze Codierung die für mich jetzt hilfreich wären näher infomieren kann.
    Habe bei php.net hier nachgeschaut PHP: mail - Manual

    Probiere erst mal das mit dem Content-Transfer-Encoding: 8bit bzw. Content-Transfer-Encoding: base64

    Einen Kommentar schreiben:


  • Manko10
    antwortet
    Eventuell musst du noch zusätzlich diesen Header setzen:
    Code:
    Content-Transfer-Encoding: 8bit
    wenn das nicht geht, versuche mal:
    Code:
    Content-Transfer-Encoding: base64
    und kodiere den Mail-Text vor dem Absenden mit der Funktion base64_encode().

    Einen Kommentar schreiben:


  • David
    antwortet
    Zitat von cuep Beitrag anzeigen
    Leider geht das was bisher vorgeschlagen wurde nicht!
    Also irgendwie glaube ich nicht, dass Du so schnell SwiftMailer ausprobiert hast
    Content-type funktioniert nur bei Mime-Mails. Vielleicht gibt es auch Mail-Programme, die den Content-type/charset auch ohne MIME-Ankündigung akzeptieren, Thunderbird scheint das schon mal nicht zu tun.

    Einen Kommentar schreiben:


  • Manko10
    antwortet
    Nein, ich denke nicht.
    Was wir noch wissen wollen:

    welchen Inhalt hat die Variablen $headers? Mit welchem Zeichensatz wird die Formularseite angezeigt (bitte nicht nur auf das META-Tag schauen, sondern wirklich (im Firefox) unter Ansicht->Zeichenkodierung).

    Einen Kommentar schreiben:


  • cuep
    antwortet
    Die mail() sieht so aus

    Code:
    mail($email,$betreff,$message,$header);
    Leider geht das was bisher vorgeschlagen wurde nicht!
    Habe auch was gelesen das man bei
    <form action... noch was mit accept-chars eintragen kann würde das was bringen?

    Gruß

    CueP

    Einen Kommentar schreiben:


  • cuep
    antwortet
    Ich werde eure beiden Varianten mal probieren.
    Ja ich habe in der Mail Funktion einen header wo auch
    "Content-Type: text/plain; Charset=UTF-8\n" drinne steht. Geht damit auch nicht. Wie gesagt werde es mal probieren und mich aufjedenfall nochmal melden.
    @Manko10 Lieber zu spät als nie

    Gruß

    CueP

    Einen Kommentar schreiben:


  • Manko10
    antwortet
    Die Funktion mail() hat einen Parameter $headers. In diesem kannst due verschiedene Mail-Header, getrennt durch zeilenumbrüche angeben (ich denke, das kennst du - ansonsten hilft PHP.net dir gerne weiter).
    Hier musst du unter anderem auch den Header Content-Type angeben:
    Code:
    "Content-Type: text/plain; Charset=UTF-8\n"
    bzw.
    Code:
    "Content-Type: text/html; Charset=UTF-8\n"
    für HTML-Mails (ich hoffe doch, du bist keiner dieser HTML-Mail-Anhänger ).

    Edit:
    Zu langsam, aber wenigstens habe ich nicht exakt das gleiche geschrieben.

    Einen Kommentar schreiben:


  • David
    antwortet
    Ich habe ein formular.php Datei die, die Daten über die
    mail() Funktion versendet.
    Werden da irgendwelche header gesetzt? Wie sieht die Code-Zeile mit mail() aus?

    Bei SwiftMailer setze ich einfach das Charset über eine Methode des Nachrichten-Objekts
    Zitat von http://www.swiftmailer.org/wikidocs/v3/composition/headers
    Equally, if your headers are not in UTF-8 or ISO-8859-1 character format, you will need to specify the character set using setCharset():
    Code:
    $message =& new Swift_Message();
    $message->headers->setCharset("windows-874");

    Einen Kommentar schreiben:


  • cuep
    antwortet
    Danke für die schnelle Antwort.
    Was genau meinst du mit, "wie wird die Mail erzeugt".
    Ich habe ein formular.php Datei die, die Daten über die
    mail() Funktion versendet.
    Kannst du mir ein Link oder eine Anweisung hier schreiben, weil leider kann ich mit den Möglichkeiten die du genannt hast nicht soviel anfangen.

    PS: Eine Datenbankverbindung gibt es nicht.

    Danke

    Gruß

    CueP

    Einen Kommentar schreiben:

Lädt...
X