![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Nieautoryzowani Postów: 141 Pomógł: 0 Dołączył: 30.09.2008 Skąd: Gdańsk Ostrzeżenie: (20%) ![]() ![]() |
Witam!
Dookoła ludzie mi mówią: "Skończ z ISO, to przeszłość". Ale jak mam do cholery skończyć z ISO skoro nie umiem się bawić w UTF-8. Dlatego przychodzę i pytam na forum: jak zmienić ciąg znaków ŻżŹźĄąŚśĆ棳ÓóĘę, aby był poprawnie odczytywany przez przeglądarkę? Próbowałem gżegżółką, ale pojawiają się tylko znaczki zapytania. Ale jak już tym samym programem konwertuję do ISO to normalnie wyświetla polskie znaki. Dodam że dodałem <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> (i odpowiednio zmieniałem). Kolejna sprawa to mysql. Mimo poradnika na wortalu polskie znaczki zmieniają się na ![]() ![]() Jak temu zaradzić? -------------------- Zawieszony w pisaniu przez @mike - pisze na PW. <?php echo !$lubie.'moderatorow' ?>
Jak to czytasz, to współczuj mi. Przebolewam za swe grzechy... Współczujcie... Gdzie to współczucie? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 178 Pomógł: 51 Dołączył: 7.01.2009 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
W Grzegrzółce ustaw: Konwersja i niżej wybierz Windows 1250 oraz w drugim polu UTF-8.
A co do mysqla to nic ci nie pomogę. -------------------- Sklep
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
|
![]()
Post
#3
|
|
![]() Grupa: Moderatorzy Postów: 4 069 Pomógł: 497 Dołączył: 11.05.2007 Skąd: Warszawa ![]() |
jest przyczepiony temat o tym, jest artykuł na wortalu o tym...poczytaj , pomyśl
![]() |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 229 Pomógł: 34 Dołączył: 7.12.2008 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Najlepiej miec zgodnosc we wszystkich aspektach. Tzn miec dane w bazie zakodowane jako utf-8, meta ustawione na utf-8, sam plik ze strona zapisany w utf-8 i jeszcze ustawic SET NAMES przy polaczeniu na utf-8
![]() ![]() Pozdro |
|
|
![]() ![]()
Post
#5
|
|
![]() Grupa: Nieautoryzowani Postów: 141 Pomógł: 0 Dołączył: 30.09.2008 Skąd: Gdańsk Ostrzeżenie: (20%) ![]() ![]() |
To tak:
1. Zrobiłem ALTER DATABASE `nazwa_bazy` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci i to ALTER TABLE `nazwa_tabeli` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci na bazie danych. 2. Dodałem to mysql_query ('SET NAMES utf8'); mysql_query ('SET CHARACTER_SET utf8_unicode_ci'); do kodu php. 3. Wykonałem update tekstu z windows 1250 na utf-80 według tomsona. 4. Wynik: Nie ma prawdziwej pobo??no?›ci bez bohaterstwa.Henri Fredric Amieli = jeszcze gorszy. Przed tymi zabiegami było Nie ma prawdziwej pobo??ności bez bohaterstwa.Henri Fredric Amieli. W notatniku wygląda to tak: Nie ma prawdziwej poboĹĽnoĹ›ci bez bohaterstwa. (przepuszczone przez grzegrzólkę) I co? Co dalej? -------------------- Zawieszony w pisaniu przez @mike - pisze na PW. <?php echo !$lubie.'moderatorow' ?>
Jak to czytasz, to współczuj mi. Przebolewam za swe grzechy... Współczujcie... Gdzie to współczucie? |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 1 182 Pomógł: 115 Dołączył: 4.03.2009 Skąd: Myszków Ostrzeżenie: (0%) ![]() ![]() |
Bo tekst był zapisany w latin2 czy innym kodowaniu, a teraz zmieniłeś kodowanie całej bazy. Powinieneś najpierw przekodować całą zawartość bazy.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 36 Pomógł: 6 Dołączył: 18.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
2. Dodałem to mysql_query ('SET NAMES utf8'); -> to załatwia Ci cały problem komunikacji z bazą danych , nie musisz nic konwertować. Wymuszasz w ten stosób na SQL komunikację w UTF-8 (w dużym uproszeniu), bez względu na to jaka jest natywna strona kodowa. 3. Wykonałem update tekstu z windows 1250 na utf-8 według tomsona. -> Pozwól Gżegżółce automatycznie rozpoznać charset pliku źródłowego. Jeżeli nie pomoże: jest taka opcja jak mieszanka iso + windows, może masz w pliku napaćkane różnym kodowaniem. Ten post edytował pi_wo 18.03.2009, 20:40:29 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 229 Pomógł: 34 Dołączył: 7.12.2008 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
A masz plik z kodem zrodlowym zapisany w kodowaniu utf-8??
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 1 182 Pomógł: 115 Dołączył: 4.03.2009 Skąd: Myszków Ostrzeżenie: (0%) ![]() ![]() |
To akurat nie ma znaczenia. PHP nie rozpoznaje kodowania skryptu.
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Nieautoryzowani Postów: 141 Pomógł: 0 Dołączył: 30.09.2008 Skąd: Gdańsk Ostrzeżenie: (20%) ![]() ![]() |
Nic nie działa. Nadal pojawiają się te znaczki.
Brałem ŻżŹźĄąŚśĆ棳ÓóĘę i konwertowałem: Autmatyczny >>> UTF-8 Utf-8 >>> UTF-8 Mieszanka >>> UTF-8 Windows 1250 >>> UTF-8 i za każdym razem, robiłem update i w bazie pojawiały się ? ? ? ?, a na stronce ? ? ? ? I co mam zrobić? Wam, działa? Jak to robicie? Może mi ktoś to objasnić? erix, kiedyś się tak mądrzył to niech teraz powie co i jak! EDIT Otworzyłem front page express napisałem mój ciąg i przepusciłem przez grzegrzółkę Automatyczny >>> UTF I grzegrzółka zmieniała nawet meta na utf-8 (wcześniej było windows-1250) ale jak żem ku*wa to dał do bazy to nadala te je*ane ? ? ? ? i co mam robić? hę? Ten post edytował obelix94 19.03.2009, 11:14:42 -------------------- Zawieszony w pisaniu przez @mike - pisze na PW. <?php echo !$lubie.'moderatorow' ?>
Jak to czytasz, to współczuj mi. Przebolewam za swe grzechy... Współczujcie... Gdzie to współczucie? |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 1 178 Pomógł: 51 Dołączył: 7.01.2009 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Wiesz co ~obelix94:
1. Nieładnie tak mówić. 2. Też mam taki sam problem (wykonuję kroki i znaczki zapytania). Ale nie czekam z nim aż ktoś rozwiąże. Google.pl i wszystko jasne. Jak znajdę rozwiązanie to powiem ze znalazłem. -------------------- Sklep
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 36 Pomógł: 6 Dołączył: 18.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
Z tego co zrozumiałem zamieniłeś na UTF-8 z ISO (latin2), ale już się pogubiłem. Jeżeli zgadza się to co mówię:
Moje przypuszczenia: Jeżeli konwertujesz istniejącą bazę do innej strony kodowej, przed konwersją zrób dumpa i skonwertuj w gżegżółce plik do interesującego Cię formatu ![]() Jeżeli masz backup, wywal wszystkie treści z bazy (lub całą bazę) i przed importem skonwertuj w gżegżółce plik .sql do UTF-8. (tip: phpMyAdmin umożliwia określenie zestawu znaków dla pliku, z którego importujesz) Jeżeli nie masz backup'a ... Cóż :/ musisz wybrać co jest dla Ciebie wygodniejsze: - ręczne poprawienie wszystkich treści w bazie - czy export bazy do .sql, otworzenie pliku w notatniku i ręczne poprawienie wszystkich znaków Ten post edytował pi_wo 19.03.2009, 11:56:40 |
|
|
![]()
Post
#13
|
|
![]() Grupa: Nieautoryzowani Postów: 141 Pomógł: 0 Dołączył: 30.09.2008 Skąd: Gdańsk Ostrzeżenie: (20%) ![]() ![]() |
Z tego co zrozumiałem zamieniłeś na UTF-8 z ISO (latin2), ale już się pogubiłem. Jeżeli zgadza się to co mówię:
No i tak żem zrobił. W bazie ma tylko jedną tabelkę i jeden wiersz: cholerne polskie znaki. Używam konsoli myadmina sql. A i nadal nie działa... Jak konwertowałem bazę nic w niej nie było. Zrobiłem: 1. Eksportowałem bazę 2. Wyczyścuiłem bazę 3. Poprawiłem znaki zapytania na polskie znaki 4. Wziąłem grzegrzółkę i chciałem konwertować do utf-8 ale nie rozpoznano standardu Co dalej? Ten post edytował obelix94 19.03.2009, 12:18:47 -------------------- Zawieszony w pisaniu przez @mike - pisze na PW. <?php echo !$lubie.'moderatorow' ?>
Jak to czytasz, to współczuj mi. Przebolewam za swe grzechy... Współczujcie... Gdzie to współczucie? |
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 1 182 Pomógł: 115 Dołączył: 4.03.2009 Skąd: Myszków Ostrzeżenie: (0%) ![]() ![]() |
Ale w czym poprawiłeś te znaki? Bo jeśli w programie pokroju Notatnika to znów masz windows-1250
![]() |
|
|
![]()
Post
#15
|
|
![]() Grupa: Nieautoryzowani Postów: 141 Pomógł: 0 Dołączył: 30.09.2008 Skąd: Gdańsk Ostrzeżenie: (20%) ![]() ![]() |
Mniejsza z tym.
Mam ja taki pomysł a wy mi opiszecie co i jak. 1. Zakładam nową bazę danych. 2. ... Napiszcie mi, proszę po kolei co mam robić aby mieć polskie znaki. Od początku (załozenia bazy) do końca (stworzenia tabelki i umieszczenie danych żćźęóń) proszę, bo już się pogubiłem co i jak... -------------------- Zawieszony w pisaniu przez @mike - pisze na PW. <?php echo !$lubie.'moderatorow' ?>
Jak to czytasz, to współczuj mi. Przebolewam za swe grzechy... Współczujcie... Gdzie to współczucie? |
|
|
![]() ![]()
Post
#16
|
|
![]() Grupa: Zarejestrowani Postów: 1 178 Pomógł: 51 Dołączył: 7.01.2009 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
1. Zakładasz bazę danych
2. Ustawiasz kodowanie w phpmyadmin na utf8_polish_ci 3. Tworzysz tabelkę za pomocą phpmyadmin i również dajesz utf_polish_ci 4. Insert into nazwa tabeli set nazwapola="żćźęćńłó" 5. Powinno byc wszystko ok 6. Za pomocą sql i php -> select * from where id="1" -> funkcja do danych, zapytanie 7. ustawiasz w meta charset na utf-8 8. Dajesz echo dla wyniku z bazy 9. Odpalasz all i podaj co ci wyszło. -------------------- Sklep
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 695 Pomógł: 65 Dołączył: 27.07.2009 Skąd: Y Ostrzeżenie: (0%) ![]() ![]() |
mam podobny problem..
baza jest stworzona jako utf8_polish_ci kazda tabela utf8_polish_ci każde pole varcher utf8_polish_ci format pliku UTF-8 w meta utf-8 przy pobraniu danych z bazy zamiast polskich znaków są znaki zapytania. .. :/ |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 389 Pomógł: 141 Dołączył: 11.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Przyklejony Temat: MYSQL Polskie znaki, jest tam link do http://wortal.php.pl/wortal/artykuly/pomys...e_znaki_a_mysql, pod sam koniec jest napisane co i jak.
mysqli: Kod $mysqli->set_charset("utf8"); mysql: Kod mysql_query("SET NAMES utf8"); mysql_query("SET CHARACTER SET utf8"); mysql_query("SET collation_connection = utf8_polish_ci"); pdo: Kod $pdo-> query ('SET NAMES utf8'); |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 21.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Podepnę się pod temat by nie robić syfu.
Mam stronkę kodowaną w UTF-8, pliki również kodowane w UTF-8, baza danych również. Wszystko chodzi, ale czasem zdarza się, że odwiedzając stronę polskie znaki uciekają. Są krzaki, źródło pokazuje, że kodowanie jest ISO, a wszędzie jest UTF-8. Po odświeżeniu strony wszytsko jest ok i kodowanie wraca na UTF-8. Krzaki są na wszystkich polskich znakach i tych wpisanych w plik i tych wyciąganych z bazy danych Gdzie może być błąd? |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.04.2025 - 05:42 |