ďťż

Błąd w valiacji Czyli coś z unicode(?)

       

Podstrony


telcocafe

Witam. W meta używam:
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
Jednak znikają mi literki "ś". Po za tym w waliadacji pojawia sie błąd:
http://validator.w3....wendish.ovh.org
Przetłumaczy ktoś i pomoże w rozwikłaniu zagadki? :)

Pozdrawiam



Zapewne znikają nietylko "ś" i "Ś", lecz także wszelkie "ą" oraz "ź"... Przejedź odpowiednio po tym tekście np. Gżegżółką... Co do błędów: validator znalazł jakieś "obce" znaki (czyli z innego kodowania, tak myślę)...

//Jak to naprawić? Tam, gdzie powinny byś "ś", "ą", "ź" daj właśnie te znaki... Masz coś zupełnie innego :/
Użytkownik pbnan edytował ten post 05 sierpień 2006, 16:15
No, znika tylko ą, ś i ź ;)

Up: Oto fragment kodu z tymi dwoma znakami:
<div id="data"><?php echo("Dziś jest ".date("d.m.Y")); echo("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"); echo("Jest godzina ".date("H:i:s")); ?></div> <div id="lewy"> <div class="Block"> <div class="Header"></div> <div class="Content"><a href="index.php?pokaz=glowna">Index</a><br /> <a href="index.php?pokaz=ksiega">Ksiega Gości</a><br />
W drgiej linii jest ś, podobnie jak w ostatniej. To te, o które kłóci się valiadtor.
Użytkownik bartek_kawa edytował ten post 05 sierpień 2006, 16:20

No, znika tylko ą, ś i ź ;)

Up: Oto fragment kodu z tymi dwoma znakami:
<div id="data"><?php echo("Dziś jest ".date("d.m.Y")); echo("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"); echo("Jest godzina ".date("H:i:s")); ?></div> <div id="lewy"> <div class="Block"> <div class="Header"></div> <div class="Content"><a href="index.php?pokaz=glowna">Index</a><br /> <a href="index.php?pokaz=ksiega">Ksiega Gości</a><br />
W drgiej linii jest ś, podobnie jak w ostatniej. To te, o które kłóci się valiadtor.

No właśnie... Nie wiem, jakiego edytora używasz, ale zmień te "ś" na "ś" w Notatniku. Potem przeleć jakimś programem do tego stworzonym, np. Gżegżółka ;)



W kodzie strony
- zamiast ś wpisujesz ¶ - zamiast Ś wpisujesz ¦ - zamiast ź wpisujesz Ä˝ - zamiast Ź wpisujesz ¬ - zamiast ą wpisujesz ± - zamiast Ą wpisujesz ˇ
P.S. nie wiem czy te znaczki co ci napisałem będą dobrze wyświetlane po zapisaniu posta

Hmmm...Używam PSPada. Póki co zmieniłem sobie na "Dzisiaj" oraz na "Gosci". ;)

Te znaczki działają :D Pozdrawiam i dziękuję.
Użytkownik bartek_kawa edytował ten post 05 sierpień 2006, 16:26
A, i radzę pozamieniać to właśnie w Notatniku jak powiedział pbnan

Mówię, problem powinien zniknąć

Albo zró sobie funkcję w PHP z użyciem str_replace() do automatycznej zamiany przez wysłaniem do przeglądarki. Ja tak robię i jest cacy.

Bez sensu, a jeśli by chciał używać kodowania utf-8 (zalecane)? Zresztą nie ma co się bawić w takie pierdoły, lepiej dorwać jakiś edytor nie-Notatnik, który zapisze Ci dokument z kodowaniem takim jakim chcesz, w tym wypadku iso-8859-2. Wystarczy jeden z większości edytorów HTML (głównie polskich, gdyż większość angielskich zabawek pod Windowsa nie ma chyba obsługi tego kodowania? - UTF-8 napewno ma i takie kodowanie Ci polecam!). Nawet prosty edytor Notepad++ może Ci pomóc.

A jak już nie chcesz zmieniać edytora, to ściągnij program "Gżegżółka XP" i przekonwertuj kodowanie na iso-8859-2...

Gość napisał, że używa ISO, a to jest oficjalne kodowanie Polskich znaków. Skoro więc chce używać ISO to niech tak zostanie.

Jasne że jest wiele narzędzi do konwersji polskich znaków, ja tylko powiedziałem jak to wygląda w praktyce.

OK... Nie chcę się kłócić, ale taka praktyka z zamienianiem ogonków za pomocą PHP jest dość kiepska ;)


OK... Nie chcę się kłócić, ale taka praktyka z zamienianiem ogonków za pomocą PHP jest dość kiepska ;)

Dlaczego?
Nie muszę sam się martwić o kodowanie, nie muszę ręcznie konwertować literek, piszę normalnie po polsku, a PHP przed wysłaniem strony do usera samo zamienia znaczki. Kiedy tak jeszcze nie robiłem musiałem się nieźle naharować

Pisząc w pierwszym lepszym edytorze HTML też będziesz miał polskie znaki, a on sam Ci zamieni na odpowiednie ogonki. To tylko niepotrzebne zwiększenie ładowanie strony, oraz weź pod uwagę, że nie każdy ma dostęp do PHP.

Jednym słowem - chyba najgorsze rozwiązanie :P
Użytkownik Coldpeer edytował ten post 05 sierpień 2006, 19:56
Szkoda jedynie, że ta Gżeżólka █████ pomogła :mad2: Zminiła mi znaki spowrotem na jakie były - te takie krzaczki.

kutar - wyślij mi ten skrypt - spróbuję ;)
Użytkownik bartek_kawa edytował ten post 06 sierpień 2006, 08:57

(...) piszę normalnie po polsku (...)
Ty nie piszesz po Polsku, tylko w Windows-1250 :P


(...)
kutar - wyślij mi ten skrypt - spróbuję ;)


ja nie kutar, ale masz funkcję :)

function prawieEcho($tx) { $charR['ą'] = '±'; $charR['Ą'] = 'ˇ'; $charR['ś'] = '¶'; $charR['Ś'] = '¦'; $charR['ź'] = 'Ä˝'; $charR['Ź'] = '¬'; $res = $tx; $res = (string)$res; $res = str_replace(array_keys($charR), array_values($charR), $res); echo ($res); }
Poprostu, w PHP normalnie używasz echo(), a teraz użyj prawieEcho() :P
Ja tak robię :)

PS Zaleca się UFT-8 :P :P :P
Użytkownik DJ_ProG edytował ten post 07 sierpień 2006, 08:59

Ty nie piszesz po Polsku, tylko w Windows-1250 :P
LOL :lol:

Chodzi o to, że tym razem poprawiłem html-a w pajączku i wszystko jest ok :D

DJ_ProG - coś w tej Twojej funkcji mi nie pasi...

Zobacz to:

function makecharset($text) {$win=array('ś','Ś','ź','Ź','ą','Ą') ; $iso=array('¶','¦','Ä˝','¬','±', 'ˇ'); $text=str_replace($win,$iso,$text); return $text;}

i potem robisz tak:

echo makecharset('Tutaj text lub zmienna z textem');


Chodzi o to, że tym razem poprawiłem html-a w pajączku i wszystko jest ok :D
A teraz to co poprawiłeś odpal w notepadzie - zobaczysz, jak wyglądają znaczki poprawne dla ISO w Win :P


DJ_ProG - coś w tej Twojej funkcji mi nie pasi... (...)
sorry, ale co Ci nie pasi?
Czy wg Ciebie istnieje tylko jedno rozwiązanie danego problemu?
>.< Pisałem ten kod dawno temu, keidy dopiero się uczyłem, więc opierałem się na FAQ. Czyli tymbardziej chodzi :P
Użytkownik DJ_ProG edytował ten post 06 sierpień 2006, 16:56
Ekm, a Wy nadal z tym PHP?

Przecież to wystarczy zapisać dokument z odpowiednim kodowaniem! (innymi słowy użyj czegoś co potrafi zapisać Ci plik z takim kodowaniem jaki chcesz [nie Notatnik] - potrafi to prawie każdy edytor HTML [niektóre zagraniczne też mają możliwość zapisania z kodowaniem iso-8859-2, ale mówię głównie o polskich, np. Pajączek, EdHTML, CoreEditor, Zajączek itd.]). Zresztą najlepiej zapisz stronę z kodowaniem UTF-8 i wsio...
Użytkownik Coldpeer edytował ten post 06 sierpień 2006, 17:04
DJ_ProG - nie testowałem Twojego kodu, ale na moje oko to on tylko zamieni Ą i ź....

Coldpeer - autor tematu sam poprosił o PHP


DJ_ProG - nie testowałem Twojego kodu, ale na moje oko to on tylko zamieni Ą i ź....
Skrypt IPBowy przerobił mi te znaczki...
Dzięki za uwagę, kod poprawiony. Poprostu lister plików w totalcmd-erze zle kodowanie ustawił, i mi się pomyliło. Skrypt poprawiony, i chodzi :P
PS i tak by chodził, gdyby zamienić w str_replace array_keys z array_values :P

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.