kostenloser Webspace werbefrei: lima-city


Umlaute in PHP-Mail

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    mmc

    mmc hat kostenlosen Webspace.

    Hallo,
    mail($contacts_form_config->own_email, $contact_betreff_send, $contact_nachricht_send, "From: ".$contact_sender." <".$contact_email_send.">");

    mit diesem Code wird eine E-Mail versandt.
    Leider werden die Umlaute nicht richtig konventiert und als komische zeichen angezeigt.
    ich habe auch schon
    $header  = 'MIME-Version: 1.0' . "\r\n";
    $header .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

    eingebaut, aber leider wird dann gar keine e-mail versandt.
    Kann mir das bitte jemand in den obigen code einbauen?
    Schöne Grüße
    mmc
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. technofan

    Moderator Kostenloser Webspace von technofan

    technofan hat kostenlosen Webspace.

    Es wäre vielleicht mal wichtig zu wissen, mit welchem Zeichensatz du deine Homepage codiert hast, weil normalerweise hat man damit keine Probleme... ich gehe jetzt aber mal davon aus, dass du UTF-8 nutzt, da haben die meisten Probleme.
    In meinem Fall hat der Code super geholfen

    $from ="MIME-Version: 1.0\n";
    $from .="Content-type: text/plain; charset=utf-8\n";
    $from .= "From: Absender <noreply@absender.de>";


    Außerdem würde ich die E-Mails niemals als HTML versenden, das blocken die meisten.
    Gruß
    technofan
  4. Autor dieses Themas

    mmc

    mmc hat kostenlosen Webspace.

    mail($contacts_form_config->own_email, $contact_betreff_send, $contact_nachricht_send, $form);

    hab ihn so eingebaut; er sendet wieder keine E-Mail
    Charset ist utf-8
  5. Umlaute in E-mails sind immer ein besonderes Thema, der Grund ist, das E-mails nur 7-Bit kodiert sind und nur dem Asciistandard folgen, um sie dennoch mit Zeichen befüllen zu können, welche außerhalb dieses Standards liegen, müssen diese speziell kodiert werden.
    Aber keine Angst, das musst du nicht selbst machen, denn dafür gibt es einen eigenen Header (Content-Transfer-Encoding: quoted-printable).
    Sprich dein Code sieht etwa so aus:
    $headers = "Mime-Version: 1.0\r\n";
    $headers .= "Content-Type: text/plain; charset=utf-8\r\n";
    $headers .= "Content-Transfer-Encoding: quoted-printable\r\n";
    $headers .= "From: $contact_sender <$contact_email_send>\r\n";
    mail(
      $contacts_form_config->own_email,
      $contact_betreff_send,
      $contact_nachricht_send,
      $header
    );


    Beitrag zuletzt geändert: 5.9.2010 1:14:51 von nemoinho
  6. Autor dieses Themas

    mmc

    mmc hat kostenlosen Webspace.

    Vielen Dank für die Lösung! Hat sofort funktioniert!
    Alle, die das gleiche Problem mit den Umlauten haben, sollten obige Lösung verwenden!
    Schöne Grüße
    mmc
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!