Anzeige von Umlauten auf der internen Willkommenseite

Ich habe einen Blog Artikel verfasst - Wie benutze ich die Suche richtig - Bitte diesen beachten und auch umsetzen bevor Ihr ein Neues Thema eröffnet!

  • Hallo Zusammen,


    auf meiner homepage habe ich ein relativ kleines Problem, welches ich hier aber gerne mal schildern möchte.
    Umlaute werden aif meiner Seite auch grundsätzlich angezeigt, nur an einer Stelle nicht.
    Auf der internen Willkommenseite erscheinen die Usernamen bei "User im Livechat" nicht.
    Im Chat selber werden sie angezeigt und an allen anderen Stellen auf der Willkommenseite auch (siehe Anhang).


    Ich habe mir auch schon einen Wolf gesucht nach einer Datei, die ggf. nicht als UTF-8 ohne Bom gespeichert ist.
    Vielleicht hat jemand einen Rat!


    Gruß,
    Glückstipper

  • Ich benütz den Chat selber nicht, aber hier fehlt wohl eine Anpassung von "htmlspecialchars". Eventuell muss dieses in der allgemeinen index.php passieren oder in der include/chat/bridge.php.


    Ich denke mal, es gibt hier User, die den Chat benützen, vielleicht kommt gleich noch eine angepasste Lösung. Aber Du kannst auch mal die Suche benützen, da gibt es viele Einträge zu Umlauten für PN, Forum etc... Vielleicht wird Dir da schon mal weiter geholfen.

  • Ich weiß nicht ob es bei mir an PHP7 liegt (aber höchstwahrscheinlich nicht!), aber ich kann wegen einem Bug im BuliTipp zwar User mit Umlauten registrieren, die können sich aber nicht anmelden. Bei der Registrierung werden die Usernamen escaped gespeichert, beim Login aber unescaped abgefragt, was zu einem fehlerhaften Login führt.


    Ich weiß also gar nicht wirklich wie du das mit den Umlauten hinbekommen hast ;) Vielleicht macht da eine andere PHP-Version doch den Unterschied? Welche hast du denn da (PHP).

  • Da ist das Problem aber nicht 100% gelöst. Das Problem liegt daran, dass die login.inc.php inkludiert wird, bevor die inputSecurity()-Funktion aufgerufen wird. D.h. der Login erfolgt ohne gefilterten HTTP-Parametern (POST, GET, REQUEST), die Registrierung aber mit Filterung ;)


    Ich habe auf http://bulitipp.yannici.de die inputSecurity()-Funktion vor die login.inc.php gesetzt und lasse aber die function.inc.php vor dem inputSecurity()-Aufruf (da wird die Funktion ja definiert).


    Also so:

    PHP
    1. require_once ("include/functions.inc.php");
    2. # alle Usereingaben escapen
    3. inputSecurity();
    4. require_once ("include/login.inc.php");

    Dann funktioniert der Login und Registrierung mit Umlauten. Der Benutzername wird aber fast überall falsch ausgegeben, weil das Ü nicht interpertiert wird, weil es nicht wieder "zurück-konvertiert" wird.