Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [kodowanie] Kłopotliwe UTF-8 z BOM
l0ud
post
Post #1





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

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


Witam! Aktualnie męczę się z kodowaniem skryptu i szablonów z UTF. Zauważyłem, że przy zapisie plików skryptu do UTF z BOM występują problemy z sesją - nagłówki zostają wysłane wcześniej, mimo, że pliki zaczynają się od razu na <?php . Przy zapisaniu skryptu bez BOM problem nie występuje, ale polskie znaki nie są wyświetlane poprawnie. Nie wysyłam jeszcze żadnego <head> a więc też deklaracji kodowania - czy po jej dodaniu wszystko będzie w porządku? Bo przecież z BOM polskie znaki niby są? Edytor to Notepad++.

Jak rozwiązać ten problem? Czy wystarczy dodać tylko deklaracje kodowania? Jak Wy kodujecie swoje skrypty w UTF?

Pozdrawiam (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
netmare
post
Post #2





Grupa: Zarejestrowani
Postów: 285
Pomógł: 37
Dołączył: 18.12.2007
Skąd: Łódź

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


nie bardzo rozumiem po co BOM...
header('Content-Type: text/html; charset=UTF-8'); nie załatwia sprawy??

Edit: Znaczy jak bom to chyba utf-16 (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Edit2: Po przemyśleniu tytułu tematu (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) To ta definicja w header powinna Ci wystarczyć, a plik zapisuj bez bom, bo bom zawsze jest umieszczany na początku pliku więc jeszcze przed <?php (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Ten post edytował netmare 5.04.2008, 20:52:24
Go to the top of the page
+Quote Post
Sabistik
post
Post #3


Administrator wortalu


Grupa: Przyjaciele php.pl
Postów: 960
Pomógł: 39
Dołączył: 21.10.2003
Skąd: Kraków

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


Nie musi być BOM żeby był poprawny UTF z polskimi znakami. Zmień edytor, lub sprawdź czy w jego opcjach nie możesz wyłączyć jego dodawanie.
Go to the top of the page
+Quote Post
l0ud
post
Post #4





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

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


Oczywiście w opcjach edytora jest możliwość zapisu bez BOM i to właśnie niej używałem. Problem w tym, że wtedy kodowanie było niepoprawne. Podejrzewam jednak, że header załatwi sprawę.

A właśnie, ostatnie pytanie: Czy wystarczy ustawienie kodowania w sekcji <head>, czy muszę wysłać jego deklarację już w nagłówku?

Pozdrawiam
Go to the top of the page
+Quote Post
Kreton
post
Post #5





Grupa: Zarejestrowani
Postów: 345
Pomógł: 3
Dołączył: 20.02.2005

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


Priorytet na nagłówek wysłany przez serwer, jeżeli go nie ma to przeglądarka sama wybiera sobie kodowanie elbo sugeruje sie tym podanym w znaczniku meta. Jeżeli dostałeś meta z serwera meta zostanie zingnorowane.

UTF-8 nie musi zawierać BOM na początku pliku. UTF-16 albo UTF-32 owszem.
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: 23.08.2025 - 10:00