Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Problem z iconv()
Ivellios
post 4.01.2010, 00:29:08
Post #1





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 2.03.2007

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


Mój problem wygląda następująco:

Mam stronę zintegrowaną z phpBB3. Strona ma kodowanie ISO-8859-2, natomiast forum UTF-8.

Na stronie utworzyłem niedawno system quizów, a jak to w systemach quizów bywa, mile widziana tabelka z wynikami userów tongue.gif

http://www.paranormalium.pl/index.php?akcj...&qa=results

Zmienna zawierająca nazwę usera wygląda tak:
  1. $juzyrnejm = $row['username'];
  2. $juzyrnejm = iconv("UTF-8", "ISO-8859-2", $juzyrnejm);

Niestety, występuje problem z polskimi znakami - iconv() nie konwertuje polskich liter. Efekt - na liście z wynikami wyskakują krzaczki typu "ma?y".

Czy da się coś na to poradzić?
Go to the top of the page
+Quote Post
cojack
post 4.01.2010, 01:00:08
Post #2





Grupa: Zarejestrowani
Postów: 898
Pomógł: 80
Dołączył: 31.05.2008

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


Sprawdzaj kodowanie w jakim user wysyła dane. Być może tu leży pies pogrzebany.


--------------------
cojack blog - mój blog (na jakiś czas off).
"jak czegoś nie wiem, to nie myślę że wiem" - moja domena
Go to the top of the page
+Quote Post
Ivellios
post 4.01.2010, 20:57:28
Post #3





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 2.03.2007

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


Tzn phpBB używa kodowania UTF-8 i w takim kodowaniu teoretycznie zapisuje rekordy w bazie danych. Dziwi mnie jednak to, że po przełączeniu w przeglądarce na kodowanie UTF-8 krzaki wciąż się pojawiają :/ Zamiast "mały" wciąż wyskakuje "ma?y"...
Go to the top of the page
+Quote Post
Pilsener
post 5.01.2010, 10:20:37
Post #4





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


Gdzieś się knoci:
- dane trafiają do bazy w złym kodowaniu
- baza ma złe kodowanie
- złe kodowanie jest wybrane przy połączeniu
- złe kodowanie jest w nagłówkach strony

Użyj funkcji typu:
http://pl2.php.net/manual/pl/function.mb-detect-encoding.php

By rozpoznać kodowanie źródłowe swoich krzaków. Potem sprawdź, skąd się to bierze, należy zlikwidować przyczynę a nie jedynie zamaskować skutek.
Go to the top of the page
+Quote Post
Ivellios
post 23.01.2010, 17:13:51
Post #5





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 2.03.2007

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


Użyłem podanej funkcji i wyświetliło tylko ASCII.
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: 7.07.2025 - 21:22