schildi: utf-8, mysql und textarea

nach umstellung auf utf-8 hab ich probleme mit textareas und sonderzeichen.
sonderzeichen werden als html-entities in die datenbank geschrieben.

habe alle einstellungen, die mir bekannt sind auf utf-8 angepasst:

mysql:
SET NAMES 'utf8'
mysql-datenbank ist komplett auf utf8 eingestellt (und da ist auch ansonsten alles i.o.)

http:
<?php header("content-type: text/html; charset=utf-8");?>

html:
<meta http-equiv="content-type" value="text/html; charset=utf-8">

<form [...] accept-charset="utf-8" />

woran kanns liegen?

danke+gruß

  1. echo $begrüßung;

    nach umstellung auf utf-8 hab ich probleme mit textareas und sonderzeichen.
    sonderzeichen werden als html-entities in die datenbank geschrieben.
    woran kanns liegen?

    Zwischen der Textarea und der Datenbank liegen einige Verarbeitungsschritte (z.B. Entgegennahme im Script, Erstellen eines INSERT-Query, usw. usf.). Prüfe bitte zunächst nach jedem dieser, deiner Schritte das Ergebnis desselben, um so erstmal zu ermitteln, wer für die Entities verantwortlich ist.

    echo "$verabschiedung $name";

    1. Zwischen der Textarea und der Datenbank liegen einige Verarbeitungsschritte (z.B. Entgegennahme im Script, Erstellen eines INSERT-Query, usw. usf.). Prüfe bitte zunächst nach jedem dieser, deiner Schritte das Ergebnis desselben, um so erstmal zu ermitteln, wer für die Entities verantwortlich ist.

      danke für den tip - tatsächlich hatte ich ein htmlentities() dazwischen, dass ja alle sonderzeichen in die entsprechende html-entity umsetzt.

      1. Moin!

        danke für den tip - tatsächlich hatte ich ein htmlentities() dazwischen, dass ja alle sonderzeichen in die entsprechende html-entity umsetzt.

        Das darfst du aber nicht ohne weiteres ersatzlos entfallen lassen, du solltest unbedingt prüfen, ob an dieser Stelle htmlspecialchars() notwendig ist, um die Ausgabe dem Kontext angemessen zu maskieren.

        - Sven Rautenberg

        --
        "Love your nation - respect the others."