Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Problemy z kodowaniem
Forum PHP.pl > Forum > Przedszkole
dark_root
Miałem problem z kodowaniem znaków, żeby współgrała strona z mysql. W tym celu posłużyłem się tym artykułem . Jednak jak na ironie, zmieniłem kodowanie na stronie na charset=UTF-8 w bazie zaczęły pojawiać się polskie znaki, ale za to na stronie zamiast polskich znaków są znaczki. Jak sobie poradzić z tym problemem?
RafaelX
a strone zapisałeś z godnie z kodowaniem UTF-8, czy tylko zmieniłeś informacje w mecie questionmark.gif
bełdzio
po polaczeniu sie z baza danych wykonaj zapytanie
  1. SET CHARSET utf8;
dark_root
Stronę zakodowałem zgodnie z utf-8, jednak mimo wszystko nie ma polskich znaków. Gdy zmieniłem kodowanie z powrotem na ANSI i wstawiłem to co podał bełdzio co wygląda w sumie tak [php]$sql_conn = mysql_connect('name', 'pass', 'name')
or die('Nie mogłem połaczyć się z bazą danych');
mysql_select_db('name');
mysql_query("SET NAMES 'utf8'");
Kodowanie w mysql jeż jest usawione na utf-8 jednak teraz wogóle żadne polskie znaki nie przechodzą do bazy. Czyli jak kiedyś słowo "Żak" przesłane do bazy wyglądało "�ak" to teraz wygąda "ak"
Co na to poradzić?
erix
A czy dane zapisujesz korzystając z utf8? Nie wystarczy zmienić deklaracji znaków, trzeba jeszcze przekonwertować krzaki.
dark_root
O ile dobrze rozumiem to chodzi o bazę danych. Tu sytuacja wygląda tak
  • System kodowania znaków dla MySQL: UTF-8 Unicode (utf8)
  • System porównań dla połączenia MySQL: UTF8_polish_ci
Według mnie powinno działać.
erix
Nie. Chodzi mi o obecnie zapisane dane. Jeśli zmienisz sam zestaw znaków, to Ci to nic nie da, jeśli nie przekonwertujesz już istniejących danych na nowy zestaw znaków.
dark_root
Do tej pory tworzyłem przykładowe wpisy do bazy, więc wszystkie wyrzucam, aż uda mi się osiągnąć pożądany efekt. Za każdą zmianą jaką wprowadzam dokonuje przykładowego wpisu i sprawdzam czy działa. Jak do tej pory bez powodzenia.
RafaelX
Spróbuj dodawać te wpisy nie przez PMA lecz przez twój skrypt powinno działać normalnie
dark_root
Ja dodaje te wpisy przez skrypt. Przy okazji zauważyłem ciekawą rzecz, iż gdy ręcznie zmieniłem w bazie znaczki na polskie litery to mimo wszystko w skrypcie pobierającym dane z bazy zamiast nich wyskakują "?". Pomimo iż podobnie jak baza ma on kodowanie
UTF-8.
RafaelX
bo w UTF-8 polskie znaki są kodowane a nie wystepują w postaaci "jawnej

Musiałeś źle zapisać plik albo masz tabelke bądź całą baze źle ustawioną
dark_root
Dobra wszystko działa. Wielkie dzięki za wszystkie rady.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.