Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> polskie znaki - php lub mysql
pentel
post 25.12.2007, 14:20:17
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 3.07.2007

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


Witam,
W mysql mam kodowanie latin2_general_ci - jak przeglądam zawartość w phpmyadmin jest ok.
Na stronie jednak wyświetlają się pytajniki zamiast polskich znaków. Mniemam więc iż to nie problem bazy danych.
w index.php mam:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" lang="pl">

oraz
  1. <meta http-equiv="content-type" content="text/html; charset=ISO-8859-2" />


Co jest źle? smile.gif
Pozdrawiam
Go to the top of the page
+Quote Post
Grzyw
post 25.12.2007, 15:01:13
Post #2





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

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


To kodowanie w bazie, o którym piszesz, to pewnie kodowanie samego PHPMyAdmin'a, nie serwera MySQL.
Twój problem prawdopodobnie rozwiąże wysłanie do bazy zapytań:
  1. <?php
  2. mysql_query('SET character_set_connection=utf8');
  3. mysql_query('SET character_set_client=utf8');
  4. mysql_query('SET character_set_results=utf8');
  5. ?>


tuż po połączeniu się z bazą po stronie PHP.


--------------------
Idąc po czyichś śladach, nie zajdziesz ani kroku dalej...
Go to the top of the page
+Quote Post
pentel
post 25.12.2007, 16:13:21
Post #3





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 3.07.2007

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


W strukturze pól (phpmyadmin) zmieniłem każdemu Metodę Porównywania Napisów z domyslnego latin1_swedish_ci na latin2_general_ci, więc wydaje mi sie, że zmieniłem kodowanie nie samego widoku w phpmyadminie tylko rzeczywiste kodowanie dla tych pól (choć może masz rację biggrin.gif).
W każdym razie, po dopisaniu twoich linijek, zmieniło się tyle, że zamiast pytajników na stronie są krzaczki (kwadraciki, znaki nie-polski, etc). Spróbowałem więc zamienić utf8 na iso-8859-2, a następnie latin2_general_ci. Oba powodują, że na stronie są znów pytajniki smile.gif

Pozdrawiam

EDIT: Chyba wiem, gdzie leży problem. Gdy dodaje dane do bazy danych poprzez skypt php (panel admina), to gdy z kolei dane te sa odczytywane, polskie znaki działają smile.gif Problem powstaje, gdy dodaję dane przez phpmyadmin sleep.gif

Najprostsze rozwiązanie jest zawsze najlepsze^^ Pozdrawiam

Ten post edytował pentel 25.12.2007, 16:26:56
Go to the top of the page
+Quote Post
wgrzelak
post 27.12.2007, 17:59:06
Post #4





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 22.12.2007

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


też miałem ten problem ale kolega mi pomógł, wystarczy w phpmyadmin w każdej tabeli w "Operacje" zmienić kodowanie i powinno byc wszytko ok guitar.gif

lub dodaj do "SQL"

  1. ALTER TABLE `nazwa_tabeli_1` DEFAULT CHARACTER SET utf8 COLLATE utf8_polish_ci;
  2. ALTER TABLE `nazwa_tabeli_2` DEFAULT CHARACTER SET utf8 COLLATE utf8_polish_ci;


Ten post edytował wgrzelak 27.12.2007, 18:00:18


--------------------
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: 21.06.2025 - 23:19