Als ich Ihr Skript ausgeführt habe, hat es bei mir funktioniert:
$charset = "UTF8";
$link = mysql_connect('localhost', 'root', '') or die('connection?');
mysql_select_db('test') or die('database?');
if(function_exists("mysql_set_charset")){
mysql_set_charset($charset, $link);
}else{
mysql_query("SET NAMES $charset");
}
$text = 'ţ, î, ş';
mysql_query("insert into gen_admin_words_translated (word_id, lang_id, value, needUpd) values (1, 1, '$text', 1)");
$query = mysql_query('SELECT * FROM `gen_admin_words_translated`');
$array = mysql_fetch_array($query);
print_r($array)
Ergebnis:
Array
(
[0] => 2689
[id] => 2689
[1] => 1
[word_id] => 1
[2] => ţ, î, ş
[value] => ţ, î, ş
[3] => 1
[lang_id] => 1
[4] => 1
[needUpd] => 1
)
Dinge zu überprüfen:
Überprüfen Sie, ob Ihre Webseite wirklich UTF-8 ist, vielleicht haben Sie ein Chaset an einer anderen Stelle gesetzt.
header('Content-type: text/html; charset=utf-8');
Die Dateicodierung sollte ebenfalls UTF-8 sein, da sonst Ihre Zeichen beschädigt werden könnten ..