Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [kodowanie] Kłopotliwe UTF-8 z BOM
l0ud
post 5.04.2008, 20:05:04
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 smile.gif


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
netmare
post 5.04.2008, 20:14:28
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 winksmiley.jpg
Edit2: Po przemyśleniu tytułu tematu 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 winksmiley.jpg

Ten post edytował netmare 5.04.2008, 20:52:24
Go to the top of the page
+Quote Post
Sabistik
post 5.04.2008, 20:51:10
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 5.04.2008, 23:06:43
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


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post
Kreton
post 5.04.2008, 23:11:35
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
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 20.07.2025 - 06:19