Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] Polskie znaki kodowanie
amii
post
Post #1





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

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


Wiem, że temat wałkowany ale wszystko czytałem i nic nie pomaga w ogóle jest to dziwna sytuacja. Bo aplikacja działa popranie na jednym serwerze a po przekopiowaniu plików i bazy na drugi się krzaczy. Text generalnie wyświetla się OK, problem jest kiedy wykonuje funkcje, która pobiera synonimy z bazy i zamienia odpowiadające im wyrazy w tekście. Wtedy kiedy wyraz w tekście ma polski znak to wyświetla się np. coś takiego: świata �

Mam w pliku ustawione:
  1. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  2.  
  3.  
  4. function connect_to_db() {
  5. $db = mysql_connect(SQL_HOST, SQL_USER, SQL_PASS)
  6. or die ('Nie moge sie polaczyc z baza danych: ' . mysql_error());
  7.  
  8. mysql_select_db(SQL_DB)
  9. or die('Nie moga wybrac bazy danych wystapil blad: ' . mysql_error());
  10.  
  11. mysql_query("SET NAMES 'utf8'");
  12. mysql_query('SET character_set_connection=utf8');
  13. mysql_query('SET character_set_client=utf8');
  14. mysql_query('SET character_set_results=utf8');
  15. }


Baza zaimportowana w kodowaniu utf8
DEFAULT CHARSET=utf8 dla każdej tabeli
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
poli25
post
Post #2





Grupa: Zarejestrowani
Postów: 239
Pomógł: 20
Dołączył: 19.02.2010

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


przeglądarka internetowa ustwiona na jakie kodowanie ?

poza tym jakim edytorem zapisujesz ? z mozliwoscia zmiany kodowania na utf 8 ?

Ten post edytował poli25 8.12.2010, 10:05:53
Go to the top of the page
+Quote Post
amii
post
Post #3





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

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


Przeglądarka: firefox kodowanie -> zestaw znaków -> środkowoeuropejski ISO 8859-2
edytor: windowsowy notepad++ a wcześniej linuxowy gedit
Go to the top of the page
+Quote Post
poli25
post
Post #4





Grupa: Zarejestrowani
Postów: 239
Pomógł: 20
Dołączył: 19.02.2010

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


odpowiedziałes sobie dlaczego masz problem (IMG:style_emoticons/default/winksmiley.jpg)
iso-8859-2 musisz dac utf 8 (IMG:style_emoticons/default/winksmiley.jpg) pozdrawiam
Go to the top of the page
+Quote Post
amii
post
Post #5





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

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


Niestety oprócz zrąbania czcionki na forum PHP nic to nie zmienia :/ Myślę, że to nie jest kwestia związana z kodowaniem w przeglądarce w ogóle strasznie wkurzająca sprawa nie rozumiem jak skrypt może działać na jednym serwerze a nie działać poprawnie na innym.
Mam jeszcze takie wyrażenie regularne, które odpowiada za podmianę :
  1. $wyr = "/([^(\p{L}0-9-=\"\')])". $tabliczka[$g] ."([^(\p{L}0-9-=\'\")])/";
  2.  
  3. //funckja pobierająca text z bazy
  4. function a($var) {
  5. connect_to_db();
  6.  
  7. $query = 'SELECT name, value FROM settings_art';
  8. $result = mysql_query($query) or die('Nastapił błąd w zapytaniu do bazy w funkcji a settings_art: '. mysql_error());
  9. while ($r = mysql_fetch_assoc($result)) {
  10. $site_settings[$r['name']] = $r['value'];
  11. }
  12.  
  13. $value = $site_settings[$var];
  14. return $value;
  15. }
  16.  
  17.  
  18. $contentok = a('artykul'); //wlasciwa tresc artykulu pobranie
  19. $content = $contentok;
  20. $content = losuj_synonim($content); //wywolanie funkcji losujacej synonimy dla tresci artykulu
Go to the top of the page
+Quote Post
poli25
post
Post #6





Grupa: Zarejestrowani
Postów: 239
Pomógł: 20
Dołączył: 19.02.2010

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


ja mysle że jednak to bedzie wina kodowania bo moze na jednym serwerze edytujesz innym programem a na drugim serwerze jeszcze innym. Masz 2 takie same edytory? i to samo kodowanie? Wiem ze z kodowaniem znakow wiecznie były problemu dopoki sie nie wkurzyłem i nie zmieniłem wszystko na utf. Kodowanie musi byc ujednolicone wszedzie edytor-> skrypt-> baza-> przegladarka

Ten post edytował poli25 8.12.2010, 12:21:18
Go to the top of the page
+Quote Post
misterherbata
post
Post #7





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

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


Jeśli zapisałeś już plik w błędnym kodowaniu niż był poprzednio to możesz mieć problem aby przywrócić poprawne kodowanie. Jest to dosyć kluczowa sprawa, sam nie raz się o tym przekonałem, dlatego przy edycji jakichkolwiek plików zawsze jest to pierwsza rzecz którą sprawdzam(używam Aptana Studio).
Go to the top of the page
+Quote Post
amii
post
Post #8





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

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


OK dzięki posprawdzam to (edytor i przeglądarkę bo reszta jest raczej OK). Wszędzie ustawie UTF8
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 4.10.2025 - 04:24