Witam
wszyscy proponują ustawinie kodowania UTF-8 dla definicji :
$c = "utf8";
mysql_query('SET character_set_client = '.$c);
mysql_query('SET character_set_results = '.$c);
mysql_query('SET character_set_connection = '.$c);
a czy w phpMyAdmin nie można ustawić np. cp1250_general_ci lub latin2_general_ci ? przy założeniu że kodowanie strony będzie takie samo jaki i :
mysql_query("SET NAMES 'cp1250'"); //latin2
mysql_query("SET CHARACTER SET cp1250"); //latin2
Przerobiłem już chyba wszystkie możliwości od zmiany w pliku my.ini kodowania, tak aby w tabeli były jednakowe typy kodowania :
+--------------------------+----------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
tak naprawdę zastanawiam się po co grzebać w configach serwera, jeśli można podać coś takiego :
$c = "utf8";
mysql_query('SET character_set_client = '.$c);
mysql_query('SET character_set_results = '.$c);
mysql_query('SET character_set_connection = '.$c);
mysql_query('SET default_charset = '.$c);
mysql_query('SET character_set_database = '.$c);
mysql_query('SET character_set_server = '.$c);
mysql_query('SET character_set_system = '.$c);
mysql_query('SET collation_database = '.$c);
mysql_query('SET collation server = '.$c);;
mysql_query('SET NAMES '.$c);
mysql_query('SET SET CHARACTER SET '.$c);
mysql_query('charset '.$c);
mysql_query('SET character_set_connection=utf8_polish_ci');
mysql_query('SET character_set_client=utf8_polish_ci');
mysql_query('SET character_set_results=utf8_polish_ci');
mysql_query(' SET NAMES utf8 ');
Na pewno żelazną zasadą jest taki sam typ kodowania w bazie jak i na stronie, w moim przypadku oczywiście to nie działa, gdzieś wyczytałem, że jeśli jestem zalogowany jako root to nie zadziała to poprawnie.
Siedze już nad tym tyle czasu, próbując to zrozumieć dlaczego tak a nie inaczej, że już się w tym wszystkim pogubiłem !
Proszę o komentarze, wiem że temat już był poruszany wielokrotnie, ale większość z user'ow w chwili gdy to zadziała nie zastanawia się dlaczego tak a nie inaczej.