Hallo,
mach mal im PHP Code : show variables
und schau dir dann z.b. "character_set_connection", "collation_connection" an.
Meinst du "var_dump(get_defined_vars());"?
nein, da war der Hinweis "mach mal im PHP Code" wohl ausgesprochen irreführend. Es sollte natürlich heißen: Führe mal den SQL-Query aus (z.B. im PHPMyAdmin).
mysql_query("SET NAMES 'utf8'", $sqlconnection);
was macht das $sqlconnection da hinten?
PS: Meine Kenntnisse für MySQL-Befehle sind sehr überschaubar. Reicht gerade so zum abrufen, ändern und löschen von datensätzen. Daher weiß ich auch nichts mit dem $sqlconnection anzufangen.
Aber es sollte doch genügen, um mal die PHP-Funktion mysql_query() im Manual nachzuschlagen und festzustellen, dass man optional noch die zu verwendende SQL-Verbindung angeben kann, diese Angabe jedoch optional ist. Wenn sie weggelassen wird, nimmt PHP die letzte mit mysql_connect() geöffnete Verbindung.
Habe folgende Datei geöffnet:
mysql_connect($db_adress, $db_user, $db_password);
mysql_select_db($db_db);
$query =mysql_query("SET NAMES 'utf8'")or die(mysql_error());
$query =mysql_query("set character_set_client=utf8;");
$query =mysql_query("set character_set_connection=utf8;");
$query =mysql_query("set character_set_results=utf8;");
$query =mysql_query("set character_set_server=utf8;");
$query =mysql_query("set collation_connection=utf8_general_ci;");
$query =mysql_query("set collation_server=utf8_general_ci;");
> und keine error() Meldung bekommen. Also müsste es doch funktioniert haben, oder?
Du fragst die Fehler ja gar nicht ab, außer beim ersten Statement. Aber nehmen wir mal an, es wären wirklich keine Fehler aufgetreten ...
> Zeigt aber immernoch keine Umlaute an.
Kunststück. Was nützt es, wenn du in einem isolierten Testscript mal versuchsweise die Codierungen einstellst, in deinem eigentlichen Script aber alles unverändert lässt?
So long,
Martin
--
Er: Mit wem warst du gestern abend aus?
Sie: Du bist mal wieder eifersüchtig wie immer!
Er: Wer ist Immer?