PDA

Zobacz pełną wersję : Data na stronie a kodowanie



Jdwind
20-10-2007, 02:10
Witam. Moja Joomla! to 1.0.13 ISO. Mam jeden problem z wyświetlaniem daty w templatce. Wstawiłem w pliku php templatki taki kod:
<tr>
<td><div align="center">Dzisiaj jest
<?php
$dzien = date("d");
$miesiac = date("m");
$rok = date("Y");
switch ($miesiac) {
case '01': $miesiac = 'stycznia'; break;
case '02': $miesiac = 'lutego'; break;
case '03': $miesiac = 'marca'; break;
case '04': $miesiac = 'kwietnia'; break;
case '05': $miesiac = 'maja'; break;
case '06': $miesiac = 'czerwca'; break;
case '07': $miesiac = 'lipca'; break;
case '08': $miesiac = 'sierpnia'; break;
case '09': $miesiac = 'września'; break;
case '10': $miesiac = 'października'; break;
case '11': $miesiac = 'listopada'; break;
case '12': $miesiac = 'grudnia'; break;
default: $miesiac = 'niezidentyfikowany'; break;
}
print "$dzien $miesiac $rok";
?>

</div></td>
</tr>

żeby mi wyświetlało polską datę. Kiedy to wstawiłem do templatki rhuk_solarflare_ii pokazuje mi prawidłowo. Ale jak wstawiam do drugiej (do pliku index.php) wyświetla mi krzaczek zamiast ź (w październiku). Mam w deklaracji na początku pliku:

<meta http-equiv="Content-Type" content="text/html; <?php echo _ISO; ?>" />

i w źródle strony pokazuje mi prawidłowo kodowanie ISO-8859-2. Na stronie nie mam (przynajmniej nie zauważyłem) problemów z polskimi literami poza tym jednym przypadkiem. Proszę o pomoc.
Pozdrawiam, Jacek.

sogo
20-10-2007, 10:26
tak się dzieje bo np. jak piszesz w edytorze "ź" to joomla konwertuje Ci ten znak do postaci "Ľ", "ą" do "±" "ś do "¶" . Tak polskie ogonki zapisywane są w iso. Weź ręcznie pozmieniaj literki z ogonkami na te znaki i będzie ok. W katalogu language jest plik polish.php, edytuj go w notatniku to naocznie zorientujesz się jak wygląda taki zapis.
pozdr.

Jdwind
20-10-2007, 11:14
Dobrze, ale powiedz mi w takim razie, dlaczego w templatce rhuk_solarfalre_ii tak mi nie wyświetla? Tam miesiące są wyświetlane prawidłowo. Poprawiłem tak jak mi powiedziałeś i faktycznie, daty są wyświetlane dobrze.
Dzięki i pozdrawiam, Jacek.

sogo
20-10-2007, 12:15
a jak ją podglądasz? Na serwerze czy lokalnie? Trochę więcej informacji bo trudno zgadnąć co wyrabiasz :p
pozdr.

Jdwind
20-10-2007, 13:25
Rhuk_... na serwerze wyświetla mi prawidłowo datę, lokalnie nie patrzyłem. Natomiast ta, którą mam teraz i lokalnie i na serwerze wyświetlała mi krzaczek zamiast "ź". Po Twojej poradzie oczywiście wyświetla mi się prawidłowo i tu i tu (strona jest teraz w trybie offline, więc link niewiele tu powie). Oprócz tej daty dałem sobie w artykule ciąg "Śęćźżąół i na stronie wyświetlało mi się prawidłowo, problem leżał więc w samej dacie i tylko w tej templatce (nie próbowałem na innych, tylko na tych dwóch).
Pozdrawiam, Jacek.

sogo
20-10-2007, 13:42
nadal nie pojmujesz co to jest kodowanie. Problem będzie z każdą templatką. Tam właśnie dokonujesz samodzielnie wpisu z ogonkami i nie jest on prawidłowo interpretowany przez joomla. Jeżeli piszesz artykuł w edytorze, piszesz z ogonkami ale zapis jest konwertowany przez joomla na np. iso. Tak więc w tym wypadku musisz sam robić takie konwertowanie.
pozdr.

Jdwind
20-10-2007, 14:08
Może ja nie pojmuję pojęcia kodowanie, ale tłumaczę Ci, że taki sam kod (co do znaczka) wsadziłem w pliku index.php templatki rhuk_solarflare_ii i wyświetlało mi poprawną datę na stronie (na serwerze), i ten sam kod wsadziłem do pliku index.php innej templatki i miałem krzaczki (i lokalnie i na serwerze). Temat oczywiście rozwiązany po Twojej odpowiedzi, po za tym ja nie neguję, że czegoś nie rozumiem. Mówię tylko jaką miałem sytuację.
Jacek

sogo
20-10-2007, 14:27
a sprawdzałeś kodowanie samej templatki? ewentualny błąd w zapisie kodu, bo niektóre serie templatek go miały o czym dużo pisano też na forum. Mam nadzieję, że nasza dyskusja będzie służyła potomnym :)
pozdr.

Jdwind
20-10-2007, 16:05
Chodzi Ci o kodowanie w pliku xml templatki? pierwotnie miała ISO-8859-1, ale zmieniłem na ISO-8859-2 i nic to nie dawało. Poza tym rhuk_solarflare też miała kodowanie ISO-8859-1 w pliku xml. Jeżeli chodzi Ci o plik index.php to, jak pisałem, miałem poprawnie (przeczytałem wcześniej na forum posty o kodowaniu i błędach z nawiasem w deklaracji) - <meta http-equiv="Content-Type" content="text/html; <?php echo _ISO; ?>" />
Pozdrawiam.

sogo
20-10-2007, 16:46
kodowanie w pliku xml dotyczy tylko treści w nim napisanych, tak więc jak brak w nim polskich znaków to jest nieistotne.
pozdr.

Jdwind
20-10-2007, 17:11
Więc winę przypisuję templatce. Jest do dosyć stara templatka, wiele rzeczy w niej nie było, dużo dopisałem w miarę swoich możliwości (a za wiele jeszcze nie umiem). Jedyne co mogę, to przesłać lub wkleić gdzieś zawartość plików index.php i template.css. Pewnie chodzi o jakieś deklaracje.. No nic, w każdym razie i tak cel osiągnąłem, datę na stronie mam poprawną, za co raz jeszcze dziękuję.
Pozdrawiam, Jacek.