Darstellung von Umlauten mit PHP Script nur teilweise korrekt ...

Diskutiere mit über: Darstellung von Umlauten mit PHP Script nur teilweise korrekt ... im Web Page Design Forum

  1. wunderbar

    wunderbar Thread Starter MacUser Mitglied

    Beiträge:
    24
    Zustimmungen:
    0
    Registriert seit:
    22.11.2004
    Hallo liebe Gemeinde,
    auch ich habe auf einer Flash-Homepage ein E-mail Formular eingebaut.
    Der Versand und die Formatierung wird über ein PHP-Script gesteuert-
    wobei der Versender ebenfalls eine Bestätigungs E-mail erhält.

    Mein Problem:
    "Nur" in der Bestätigungs E-mail werden die Umlaute nicht korrekt dargestellt.
    (Meine Angaben für die Codierung sind in den beiden vorletzten Zeilen zu finden.)

    Habe schon diverse Möglichkeiten getestet- aber leider ohne Erfolg. Vielleicht
    hat jemand Lust mir etwas unter die Arme zu greifen.

    Vielen Dank, beste Grüße
    andreas

    Der Code ist folgender:
    PHP:
    <?php

    if($flash==ok) {
    $gesendet="Deine Nachricht wurde gesendet. Viel Glueck!";
    $symbol="*";
    $ip=$REMOTE_ADDR;
    $datum date("d.m.Y - H:i");

    $suchen "\r";      
    $ersetzen "\n";
    $kinder str_replace($suchen,$ersetzen,$kinder);
    $internet str_replace($suchen,$ersetzen,$internet);
    $neugierig str_replace($suchen,$ersetzen,$neugierig);
    $durchsetzen str_replace($suchen,$ersetzen,$durchsetzen);
    $erwachsene str_replace($suchen,$ersetzen,$erwachsene);
    $richtig str_replace($suchen,$ersetzen,$richtig);
    $langweilig str_replace($suchen,$ersetzen,$langweilig);
    $ernst str_replace($suchen,$ersetzen,$ernst);
    $interessant str_replace($suchen,$ersetzen,$interessant);
    $cool str_replace($suchen,$ersetzen,$cool);
    $helfen str_replace($suchen,$ersetzen,$helfen);
    $tiere str_replace($suchen,$ersetzen,$tiere);

    mail("$empfaenger1","Kinderleicht-Gewinnspiel$betreff",



    "KINDER
    $kinder


    INTERNET 
    $internet


    NEUGIERIG
    $neugierig


    DUCHSETZEN
    $durchsetzen


    ERWACHSENE
    $erwachsene


    RICHTIG
    $richtig


    LANGWEILIG
    $langweilig


    ERNST
    $ernst


    INTERESSANT
    $interessant


    COOL
    $cool


    HELFEN
    $helfen


    TIERE
    $tiere




    //-----------------------------------------------------//
    IP: 
    $ip, des Senders
    Datum und Zeit: 
    $datum
    //-----------------------------------------------------//"
    ,

    "From: $absender <$absemail>");


    // **** Hier folgt der Code für die Bestätigungs E-mail **** Hier werden 
    // die Umlaute nicht korrekt dargestellt ****

    $auto_reply "Liebe[r] " .$absender.", \n\nvielen Dank f¸r deine Nachricht! Dies ist eine automatisch gesendete Best‰tigungs e-Mail.\n\n";

    $auto_reply .= "Deine e-Mail, die du ¸ber unsere Webseite abgeschickt hattest, ist erfolgreich bei 
    KINDERLEICHT eingegangen. Jetzt nimmst du an unserer Verlosung teil.\n\n\n"
    ;
    $auto_reply .= "Hier kannst Du noch einmal Deine Antworten auf unsere Fragen nachlesen:\n";
    $auto_reply .= "
    KINDER:
    Wie unterscheiden sich Kinder von Erwachsenen? Wie gehen Erwachsene mit Kindern um?
    $kinder\n\nINTERNET:
    Wie oft benutzt du das Internet? Was magst du am Internet? Was machst du besonders oft,wenn du im Internet bist?
    $internet\n\nNEUGIERIG:
    Was macht dich neugierig? Kennst du Menschen, die besonders neugierig sind?
    $neugierig\n\nDURCHSETZEN:
    Was tust du,wenn du dich einmal gegen andere durchsetzen musst? Wie machst du das?
    $durchsetzen\n\nERWACHSENE:
    Sind Erwachsene anders als Kinder oder sind die Unterschiede gar nicht so gross? Welche Erwachsenen magst du besonders gern? 
    $erwachsene\n\nRICHTIG:
    Wann hast du das letzte Mal etwas ganz Schwieriges richtig gemacht? Wie gehen andere damit um,wenn sie etwas falsch machen?
    $richtig\n\nLANGWEILIG:
    Was findest du richtig langweilig? Was ist langweilig in der Schule oder zu Hause?
    $langweilig\n\nERNST:
    Welche Menschen um dich herum sind besonders ernst? Warum sind sie so ernst? Was kann man tun,damit sie ˆfter lachen?
    $ernst\n\nINTERESSANT:
    Was interessiert dich besonders? Welche Dinge in der Schule findest du besonders interessant?
    $interessant\n\nCOOL:
    Was bedeutet es,wenn jemand cool ist? Warum wollen viele Leute gern cool sein? Wen findest du cool?
    $cool\n\nHELFEN:
    Gibt es Menschen,die nie Hilfe brauchen oder braucht jeder irgendwann jemanden,der ihm hilft? Nenne Beispiele.
    $helfen\n\nTIERE:
    Welches ist dein Lieblingstier? Kann man es streicheln oder ist das keine so gute Idee? 
    $tiere\n\n\n";

    $auto_reply .= "Die Gewinner werden nach den Herbstferien auf unserer Webseite bekanntgegeben.\n\nWir w¸nschen dir schˆne Ferien.\nDEIN KINDERLEICHT-Team\n\n\nhttp://www.xxxxx.de\n";

    mail("$absemail""Best‰tigungsmail Kinderleicht-Gewinnspiel"$auto_reply"From: $empfaenger1");

    // **** HTML-Mail senden, "Content-type" -Header. setzen ****
    $headers* = "MIME-Version: 1.0\r\n";
    $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

    //$headers .= "Content-Transfer-Encoding: 8bit\r\n";

    echo "&status=$gesendet";
    echo 
    "&symbol=$symbol";

    }
    ?>
     
  2. falkgottschalk

    falkgottschalk MacUser Mitglied

    Beiträge:
    24.026
    Zustimmungen:
    1.598
    Registriert seit:
    22.08.2005
    ...daß die Umlaute schon in Deinem geposteten Codinf fehlen ist Dir aufgefallen?
    Von der Formatierung her (iso-Tag) ist das eigentlich OK...
    ??
     
  3. mactrisha

    mactrisha MacUser Mitglied

    Beiträge:
    674
    Medien:
    2
    Zustimmungen:
    4
    Registriert seit:
    27.11.2003
    Hi wunderbar,

    vielleicht direkt im Code:

    statt Ü = &Uuml;
    statt ü = &uuml;
    statt Ä = &Auml;
    statt ä = &auml;
    statt Ö = &Ouml;
    statt ö = &ouml;

    schreiben?

    Salü,
    mactrisha.
     
  4. maceis

    maceis MacUser Mitglied

    Beiträge:
    16.645
    Zustimmungen:
    596
    Registriert seit:
    24.09.2003
    PHP:
    ...
    mail("$absemail""Best‰tigungsmail Kinderleicht-Gewinnspiel",
    $auto_reply"From: $empfaenger1"); 

    // **** HTML-Mail senden, "Content-type" -Header. setzen **** 
    $headers* = "MIME-Version: 1.0\r\n"
    $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"
    //$headers .= "Content-Transfer-Encoding: 8bit\r\n"; 
    Wie soll die Tatsache, dass Du nach dem Versenden der Mail Variablen definierst, die Mail beeinflussen?
    Im Übrigen ist mir aufgefallen, dass in $auto_reply die Umlaute bereits zerhauen sind.
    .. außer, dass die Header nicht in das mail() Kommando einbezogen sind

    HTH
     
    Zuletzt bearbeitet: 26.09.2005
  5. wunderbar

    wunderbar Thread Starter MacUser Mitglied

    Beiträge:
    24
    Zustimmungen:
    0
    Registriert seit:
    22.11.2004
    Vielen Dank für die raschen Anregungen,

    /maceis

    Es werden zwei E-Mails versand,
    die 1. an $empfaenger1,
    die 2. an $absemail (die Bestätigung für den jenigen, der das Formular ausgefüllt hat)
    PHP:
    <?php
    if($flash==ok) {
    $headers* = "MIME-Version: 1.0\r\n";
    $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $gesendet="Deine Nachricht wurde gesendet. Viel Glueck!";
    $symbol="*";
    $ip=$REMOTE_ADDR;
    $datum date("d.m.Y - H:i");
    ...
    Jup, habe die beiden Header-Zeilen nach oben gesetzt. Doch leider: Wie schon vorhin beschrieben,
    lediglich in der mail an $empfaenger1 werden die Umlaute korrekt dargestellt.

    Das verstehe ich leider nicht.
     
  6. wunderbar

    wunderbar Thread Starter MacUser Mitglied

    Beiträge:
    24
    Zustimmungen:
    0
    Registriert seit:
    22.11.2004
    Hm,
    dann habe ich scheinbar in meinem Code grundsätzlich etwas falsch geschrieben?!?
    Das Problem bei meiner Datei ist, dass lediglich in der Bestätigungs
    e-Mail für den jenigen, der das Formular ausgefüllt hat die Umlaute
    nicht korrekt dargestellt werden.
    ... leider nein ... bzw. eventuell doch, Du meinst zum Beispiel hier das "f¸r" in
    PHP:
    $auto_reply "Liebe[r] " .$absender.", \n\nvielen Dank f¸r deine Nachricht! Dies ... 
    Ich hatte vorher noch gar keine Formatierung angegeben ...
     
  7. falkgottschalk

    falkgottschalk MacUser Mitglied

    Beiträge:
    24.026
    Zustimmungen:
    1.598
    Registriert seit:
    22.08.2005
    oups ... das hat man davon, wenn man da nur mal schnell reinschaut.
    Also auf so eine Idee muss man ja auch erst mal kommen ERST mail() aufzurufen und danach die header zu definieren.
    Kuchen backen, Eier vergessen, die dann nach dem Backen drauflegen. Psst. merkt schon keiner..

    mea maxima culpa...
     
  8. falkgottschalk

    falkgottschalk MacUser Mitglied

    Beiträge:
    24.026
    Zustimmungen:
    1.598
    Registriert seit:
    22.08.2005
    @wunderbar

    a) ERST Header definieren, DANN bei MAIL() einbauen, dann klappt's auch mit Charset.
    b) wie weiter oben geschrieben "richtige" Umlaute verwenden => statt Ü = &Uuml; usw.
     
  9. maceis

    maceis MacUser Mitglied

    Beiträge:
    16.645
    Zustimmungen:
    596
    Registriert seit:
    24.09.2003
    Hier die Syntax für das mail Kommando:
    PHP:
    bool mail string tostring subjectstring message [, string additional_headers [, string additional_parameters]] )
    Das würde dann so aussehen:
    PHP:
    ...
    $auto_reply "Text mit ä ü ö und ß" ;
    $subject "Bestätigungsmail Kinderleicht-Gewinnspiel";
    $headers "MIME-Version: 1.0\r\n"
    $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $headers .= "From: $empfaenger1\r\n"
    mail($absemail$subject$auto_reply$headers);
    ...
    Mit den zerhauenen Umlauten meinte ich, das bereits in Deinem "$auto_reply = ..." die Umlaute nicht richtig dargestellt werden.

    HTH
     
    Zuletzt bearbeitet: 26.09.2005
  10. maceis

    maceis MacUser Mitglied

    Beiträge:
    16.645
    Zustimmungen:
    596
    Registriert seit:
    24.09.2003
    Er hat sie doch nicht mal nach dem Backen draufgelegt, er hat sie nur nach dem Backen in die Schüssel geschlagen *lol*

    Das ist IMHO nicht praktikabel, da man das ja kaum von den Besuchern der Seite verlangen kann.
     
    Zuletzt bearbeitet: 26.09.2005
Die Seite wird geladen...
Ähnliche Themen - Darstellung Umlauten PHP Forum Datum
Problem iWeb, Darstellung auf PC unter Firefox ...Dringend Web Page Design 31.01.2013
Webseiten Darstellung Web Page Design 10.03.2011
Darstellung Safari/FF vs IE8 Web Page Design 14.10.2010
Safari – Fehler in der Darstellung Web Page Design 24.11.2009
Darstellung in der Google-Suche Web Page Design 28.10.2009

Diese Seite empfehlen

Benutzerdefinierte Suche