![]() |
![]() |
-Kloc- |
![]()
Post
#1
|
Goście ![]() |
Może mi ktoś pomóc, bo już naprawdę nie wiem o co chodzi.
Mam jakiś plik php z kodowaniem UTF-8 Kod <!doctype html> <html> <head> <meta charset="UTF-8"> <title>...</title> </head> <body> HTML: ą ę ć ń ź ż ó ł ś<br /> <?Php mysql_connect("localhost", "login", "haslo")or die("Nie można nawiązać połączenia z bazą"); mysql_select_db("baza")or die("Wystąpił błąd podczas wybierania bazy danych"); mysql_query("SET NAMES utf8"); mysql_query("SET CHARACTER SET utf8"); mysql_query("SET collation_connection = utf8"); $zapytanie1 = "SELECT * FROM `tabela` "; $idzzapytanie1 = mysql_query($zapytanie1); while($pokaz = mysql_fetch_array($idzzapytanie1)) { $opis = $pokaz['1']; } echo "PHP: ą ę ć ń ź ż ó ł ś <br /> MYSQL: $opis"; ?> </body> </html> Znaki po HTML i PHP wyświetlają się prawidłowo, ale te po MYSQL już nie. W efekcie otrzymuję coś takiego: ± ê æ ñ ¼ ¿ ó ³ Gdy usunę to: Kod mysql_query("SET NAMES utf8"); mysql_query("SET CHARACTER SET utf8"); mysql_query("SET collation_connection = utf8"); Mam same krzaki: � � � � � � � � � Moja baza ma ustawione kodowanie utf8_general_ci, to samo tabela Macie może jakiś pomysł jak mogę wyświetlić tam polskie znaki? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 381 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Zapewne źle zaimportowałeś dane do mysql. Spróbuj jeszcze raz.
http://en.wikipedia.org/wiki/Microsoft_SQL_Server http://en.wikipedia.org/wiki/MySQL odnośnie tagu w temacie |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
Ja osobiście radzę wejść w strukturę tabeli i zmienić kodowanie na utf8_polish_ci + http://turson.pl/blog/php/polskie-znaki-w-dokumencie-php i nie ma prawa wystąpić jakiś problem (IMG:style_emoticons/default/smile.gif)
|
|
|
-Kloc- |
![]()
Post
#4
|
Goście ![]() |
U mnie w pliku php są polskie znaki tylko nie ma tych pobranych z bazy, ale zmieniłem na utf8_polish_ci i efekt jak widać.
(IMG:http://www.iv.pl/images/85517626901025750560_thumb.jpg) |
|
|
-Kloc- |
![]()
Post
#5
|
Goście ![]() |
Tak jak bym po części rozwiązał ten problem. Kodowanie Utf-8 bez BOM i brak:
Kod <meta charset="UTF-8"> Kod mysql_query("SET NAMES utf8"); mysql_query("SET CHARACTER SET utf8"); mysql_query("SET collation_connection = utf8_polish_ci"); Wtedy znaki po php i html zamieniają się na Ä Ä Ä Ĺ Ĺş Ĺź Ăł Ĺ Ĺ, a te z mysql są wyświetlane prawidłowo. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 7 Dołączył: 22.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
ostatnio miałem taki sam cyrk z wyświetlaniem jak przeniosłem stronę na serwer okazało się ze na PHP 5.3.x coś nie działało na wyższych zaczęło nagle wyświetlać poprawnie.
najlepsze jest to że w kodzie jako takim wyświetlało krzaki a jak wyświetliłem wartość jako value w inpucie działało ;S Aha i jak wchodzisz np. do phpmyadnima sprawdzić dane w mysql to rozumiem że tam są polskie znaki a nie krzaczki ? |
|
|
-Kloc- |
![]()
Post
#7
|
Goście ![]() |
W phpmyadmin są takie wygibasy jak na zdjęciu powyżej. A jak chce bezpośrednio wpisać tam ą itp to wyskakuj mi błąd.
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
Jeśli zmieniłeś kodowanie znaków w PhpMyAdmin na utf8_polish_ci to zacznie ono kodować dopiero nowe wpisy, stare nie. Dodaj nowy w tym kodowaniu i powinno być dobrze już.
Jeśli nie zależy Ci na danych w tabeli to najlepiej usuń wszystkie rekordy albo drop tabeli, potem kodowanie na utf8_polish_ci |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 7 Dołączył: 22.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
prawdopodobnie ze wszystkie pola tekstowe w bazie nie są w kodowaniu utf8_polish_ci tylko pewnie jakimś latin1..
|
|
|
-Kloc- |
![]()
Post
#10
|
Goście ![]() |
prawdopodobnie ze wszystkie pola tekstowe w bazie nie są w kodowaniu utf8_polish_ci tylko pewnie jakimś latin1.. Zgadza się baza danych na utf8_polish_ci tabela na utf8_polish_ci a pola tekstowe na latiny . Już wszystko pięknie działa (IMG:style_emoticons/default/biggrin.gif) Dziękuje za pomoc. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 26.09.2025 - 15:25 |