![]() |
![]() |
-ziutek- |
![]()
Post
#1
|
Goście ![]() |
Witam.
Bardzo wiele problemów przy pracy stwarzają polskie ogonki. Oczywiście, niektórzy z nich rezygnują, ale niestety nie wszyscy. Chciałbym zebrać garść porad odnośnie tego problemu. Może ja zacznę, jeśli pisze głupoty - proszę o poprawę. Zwykły html i polskie znaki, wystarczy dodać w sekcji <head> odpowiedni znacznik <meta>:
wówczas wszystkie nasze ąćęłńóśźż wyświetlane są poprawnie. Jeśli kod to czysty HTML, problemów raczej nikomu to nie sprawia. Ale problemy pojawiają się, gdy zaczynamy dodawać do tego php. Bardzo często zdarza się, że wówczas (np. używając szablonów Smarty, czy też podczas wysyłania maili - zarówno w formacie HTML jak i textowym) polskie znaki zamieniają się w krzaczki. Co więc należy zrobić w przypadku np. Smarty, żeby te polskie znaki pojawiały się? Sam meta tag nie wystarcza, jeśli ktoś nie wierzy, mogę pokazać przykład. To samo tyczy się wysyłania maili funkcją mail(). Istnieje oczywiście np. iconv(), ale czy to jedyne wyjście? A jeszcze więcej problemów pojawia się, kiedy przyjdzie nam korzystać z MySQL (sam niejednokrotnie robiąc backupa bazy poprzez phpmyadmina zamiast polskich znaków, dostałem krzaczki - a problem nie pojawia się tylko przy backupie). Z przeczytanych postów gdzieniegdzie informacji wnioskuje, że aby polskie znaki chodziły wszędzie tak, jak należy, kodowanie zarówno HTML, jak i php i MySQL powinno być takie samo. Jak zrobić? W niektórych momentach naprawdę już człowiek nie ma siły szukać, a być może ktoś już przez te problemy przebrnął i ma jakiś skuteczny na to sposób. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 2 605 Pomógł: 96 Dołączył: 22.10.2004 Skąd: UK Ostrzeżenie: (0%) ![]() ![]() |
Witaj,
Zrezygnuj z ISO-8859-2 i koduj znaki w UTF-8. To po pierwsze, a po drugie to wszystkie znaki dodane do dokumentu muszą być zapisane właśnie w takim kodowaniu, aby było poprawnie wyświetlane ( edytor PsPAD ma taką opcję, ale nie tylko, zobacz temat o edytorach do php ). Jeżeli chodzi o samo php to tutaj, jeżeli nagłowek jest poprawny czyli UTF-8 to znaki są kodowane właśnie w nim. Ewentulanie, jeżeli nadal nie masz polskich znaków, a w samym html'u masz poprawne kodowanie ustawione to możesz dodać surowy nagłowek ( header" title="Zobacz w manualu php" target="_manual ) ... Ja osobiście problemów z polskimi znakami nie miałem nigdy, oprócz konwersji baz mysql. Jeżeli masz jakiś konkretny problem to podaj kod, to pomożemy/wyjaśnimy (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Pozdrawiam! » Zobacz również - Najczęstsze błędy, pkt 4 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 04:16 |