Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Kodowanie
Forum PHP.pl > Forum > PHP
quax
Witam
mam pewien problem. Zajmuję się tworzeniem stron od kilku lat i nigdy nie miałem aż tak dużego problemu z kodowaniem. Mam strone A i forum B
Oby dwie strony korzystają z tego samego serwera ale różne domeny. Strona jest postawiona na Autorskim CMS'ie, a forum na silniku MyBB.

Kodowanie bazy to UTF-8

Dodaje z do bazy Mysql ze strony A zapytanie:
  1. mysql_query("INSERT INTO `shoutbox` (`uid`, `text`, `date`, `ip`) VALUES ('1', 'A Ą B C Ć D E Ę F G H I J K L Ł M N Ń O Ó P R S Ś T U W Y Z Ź Ż', '".time()."', '".$_SERVER['REMOTE_ADDR']."');");


otrzymuję:
  1. A Ä„ B C Ć D E Ę F G H I J K L Ł M N Ĺƒ O Ă“ P R S Ĺš T U W Y Z Ĺš Ĺť


Dodaje na forum takie samo zapytanie
  1. $shout_data = array(
  2. 'uid' => '1',
  3. 'text' => 'A Ą B C Ć D E Ę F G H I J K L Ł M N Ń O Ó P R S Ś T U W Y Z Ź Ż',
  4. 'date' => time(),
  5. 'ip' => get_ip()
  6. );
  7. $db->insert_query('shoutbox', $shout_data);


otrzymuję:
  1. A Ą B C Ć D E Ę F G H I J K L Ł M N Ń O Ó P R S Ś T U W Y Z Ź Ż



Już tyle się mecze nad tym skryptem ze nie mam już pomysłów jak to rozwiązać. Bardzo proszę o pomoc.
StrefaPi
a w jakim kodowaniu łączysz się do bazy w CMS?

mysql_set_charset() albo "SET NAMES utf8" i "SET CHARACTER SET utf8" czy coś w tym rodzaju?
quax
tak ustalałem utf8, header również na utf8.


A o mb_convert_encoding czy iconv nawet.
po dodaniu mb_convert_encoding poprostu znikaja polskie znaki.
StrefaPi
Nie. Chodzi o łączenie się z bazą danych... nie headery czy funkcje php, to raczej chodzi o sposób przesłania treści do mysql ;)

przed zapytaniem do bazy robisz jeszcze jedno zapytanie / albo dwa jakoś tak
  1. mysql_query('SET NAMES utf8');
  2. mysql_query('SET CHARACTER SET utf8');

jakby nie działało to fajnie jakbyś podał całą funkcję dodawania do bazy danych
quax
Dobra mam już rozwiązanie. Otóż zamieniłem funkcje mysql_connect na mysqli_connect i nie ma żadnego problemu z dodaniem polskich znaków. Niby takie same funkcje lecz mysql_connect podobno już przestarzałe.

Dzięki za pomoc snitch.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.