Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL]Problemy z kodowaniem
dark_root
post 28.02.2009, 15:12:03
Post #1





Grupa: Zarejestrowani
Postów: 341
Pomógł: 1
Dołączył: 19.11.2007

Ostrzeżenie: (10%)
X----


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?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 11)
RafaelX
post 28.02.2009, 15:15:21
Post #2





Grupa: Zarejestrowani
Postów: 144
Pomógł: 28
Dołączył: 2.01.2009

Ostrzeżenie: (0%)
-----


a strone zapisałeś z godnie z kodowaniem UTF-8, czy tylko zmieniłeś informacje w mecie questionmark.gif
Go to the top of the page
+Quote Post
bełdzio
post 28.02.2009, 19:41:47
Post #3





Grupa: Zarejestrowani
Postów: 690
Pomógł: 81
Dołączył: 6.04.2005
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


po polaczeniu sie z baza danych wykonaj zapytanie
  1. SET CHARSET utf8;


--------------------
Go to the top of the page
+Quote Post
dark_root
post 1.03.2009, 17:22:34
Post #4





Grupa: Zarejestrowani
Postów: 341
Pomógł: 1
Dołączył: 19.11.2007

Ostrzeżenie: (10%)
X----


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ć?
Go to the top of the page
+Quote Post
erix
post 1.03.2009, 17:51:36
Post #5





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A czy dane zapisujesz korzystając z utf8? Nie wystarczy zmienić deklaracji znaków, trzeba jeszcze przekonwertować krzaki.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
dark_root
post 1.03.2009, 20:49:51
Post #6





Grupa: Zarejestrowani
Postów: 341
Pomógł: 1
Dołączył: 19.11.2007

Ostrzeżenie: (10%)
X----


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ć.
Go to the top of the page
+Quote Post
erix
post 1.03.2009, 21:19:38
Post #7





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




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.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
dark_root
post 1.03.2009, 21:26:08
Post #8





Grupa: Zarejestrowani
Postów: 341
Pomógł: 1
Dołączył: 19.11.2007

Ostrzeżenie: (10%)
X----


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.
Go to the top of the page
+Quote Post
RafaelX
post 1.03.2009, 21:27:49
Post #9





Grupa: Zarejestrowani
Postów: 144
Pomógł: 28
Dołączył: 2.01.2009

Ostrzeżenie: (0%)
-----


Spróbuj dodawać te wpisy nie przez PMA lecz przez twój skrypt powinno działać normalnie
Go to the top of the page
+Quote Post
dark_root
post 1.03.2009, 21:35:58
Post #10





Grupa: Zarejestrowani
Postów: 341
Pomógł: 1
Dołączył: 19.11.2007

Ostrzeżenie: (10%)
X----


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.
Go to the top of the page
+Quote Post
RafaelX
post 1.03.2009, 21:42:38
Post #11





Grupa: Zarejestrowani
Postów: 144
Pomógł: 28
Dołączył: 2.01.2009

Ostrzeżenie: (0%)
-----


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ą
Go to the top of the page
+Quote Post
dark_root
post 1.03.2009, 22:00:10
Post #12





Grupa: Zarejestrowani
Postów: 341
Pomógł: 1
Dołączył: 19.11.2007

Ostrzeżenie: (10%)
X----


Dobra wszystko działa. Wielkie dzięki za wszystkie rady.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 08:13