Jak ustawić ogólne kodowanie na serwerze?

0

Witam.
Napotkałem na problem przy przeniesieniu strony z wirtualnego serwera postawionego na Apachu na moim komputerze, na serwer, z którego chciałbym już udostępniać stronkę. Chodzi o kodowanie.

Na wirtualu wszystko ukazuje się pięknie, nie ma krzaków na polskich znakach. Wszystkie pliki skopiowałem, bazę również, wszystko jest identyczne, ale pojawia się np.: "ZostaĹ� on przygotowany przez liderĂłw(...)".

Jak mówiłem w plikach nie mieszałem nic, więc kodowanie zostało takie samo. Czy jest jakiś sposób, żeby ustawić to jakoś, by polskie znaki też się pokazywały? Czy muszę teraz znaleźć odpowiednie kodowanie i we wszystkich plikach to ustawiać?

Dziękuję z góry i czekam na odpowiedź.

0

Te źle zakodowane dane są z bazy danych? Ta baza to MySQL?

Ogólnie MySQL i przenoszenie zakodowanych danych pomiędzy serwerami to droga przez mękę - rozwiązanie, które sprawdziłem, że działa, to baza kodowana w utf8_general_ci, połączenie PHP kodowane w UTF8 (SET NAMES utf8; po połączeniu) i wykonanie dumpa i wrzucenie go z powrotem użytkownikiem, który nie jest rootem i na połączeniu z kodowaniem UTF8.

0

Wysypało się chyba tylko kodowanie plików, baza jest ok, bo nawet pliki, gdzie jest sam html nie wyświetlają się poprawnie.

0

A to może serwer ma właśnie wymuszone kodowanie inne niż trzeba? Sprawdź nagłówki jakie wysyła serwer.

Jeżeli mowa o Apache, to domyślne kodowanie można wymusić w httpd.conf - poleceniem AddDefaultCharset utf-8.

0
Ktos napisał(a)

A to może serwer ma właśnie wymuszone kodowanie inne niż trzeba? Sprawdź nagłówki jakie wysyła serwer.

Jeżeli mowa o Apache, to domyślne kodowanie można wymusić w httpd.conf - poleceniem AddDefaultCharset utf-8.

Dodam, że to polecenie spowoduje po prostu wysyłanie nagłówka Content-Type: utf-8 tam, gdzie żadne skrypty tego nie zmieniły. W każdym razie w plikach z czystym HTMLem bym polecał dodanie odpowiedniego tagu META jednoznacznie określającego charset dla pliku, żeby nie mieć wątpliwości przy zmianie serwera...

0

Usunąłem problem.
Już nie wnikałem dlaczego po przeniesieniu stronki takie problemy z kodowaniem się pojawiły, ale we wszystkich plikach dałem Content-Type: utf-8, zmieniłem wszystkie kolumny w tabelach MySQL na utf8_polish_ci, usunąłem ze wszystkich plików wiersz mysql_query('SET NAMES "utf8"') i śmiga.
Dziękuję wszystkim za pomoc.

0

Też miałem problem z kodowaniem znaków pomiędzy bazą danych. Problem został rozwiązany w następujący sposób:

 
function setConnection()
{
	$this->resource = mysql_connect (	
						$this->_host, 
						$this->_user, 
					        $this->_pswd
						) 
						or die ("polaczenie sie nie powiodlo");
			
	mysql_select_db($this->_base_name) or die ("wybranie bazy zakonczylo sie niepowodzeniem");
	mysql_set_charset('utf8',$this->resource); 
}

**mysql_set_charset('utf8',$this->resource); ** ta linijka jest istotna

1 użytkowników online, w tym zalogowanych: 0, gości: 1