PHP min. 5.6.8MySQL min. 5.1Apache min. 2.0
PHP-Fusion 9 Jádro
v9.0
Český překlad
Pravidelně aktualizovaný

Technologie

Jak opravit hlášku: Došlo k chybě utf8

Jak opravit hlášku: Došlo k chybě utf8
Při kontrole validace na vašem webu, se může objevit místo výpisu stránky tato hláška: range'>Došlo k chybě: utf8 "\ XC3" není mapováno na Unicode. Tuto chybu jsme měli také nějaký ten týden na našem serveru, takže nebylo možné zjistit validátorem celkový počet chyb na naší HomePage. Jak jsem tento error odstranil?

Při kontrole validace na vašem webu, se může objevit místo výpisu stránky tato hláška: range'>Došlo k chybě: utf8 "\ XC3" není mapováno na Unicode. Tuto chybu jsme měli také nějaký ten týden na našem serveru, takže nebylo možné zjistit validátorem celkový počet chyb na naší HomePage. Jak jsem tento error odstranil?

Hláška se projevovala takto:

Sorry, I am unable to validate this document because on line 866 it contained one or more bytes that I cannot interpret as utf-8 (in other words, the bytes found are not valid values in the specified Character Encoding). Please check both the content of the file and the character encoding indication. The error was: utf8 "\xC3" does not map to Unicode.

Sdělovala, přeloženo zkráceně, že nelze ověřit dokument webu, protože na lince 866 je v obsahu jeden nebo více bajtů, které se nemohu interpretovat jako UTF-8. Chybová hláška říká, že došlo k chybě při překódování unicode textu, a že ascii kodek nemůže překódovat znaky na pozici 0 až 8. A tak pokud text z unicode nepřekódujeme my, pak se o to pokusí programovací jazykl Python. Jenže ten jako cílové kódování použije výchozí kódování Pythonu, které je přednastaveno na ASCII. A v tom je ten rozpor.

Řešení

  • První řešení spočívá ve změně výchozího kódování stránky, na němž se chyba projevuje, což je poněkud koplikované. V našem případě to bylo u KLomentáře pod článekem, kde se chyba projevila špatným znakem pro českou diakritiku (tzv. optazníkem,).
  • Druhé řešení chyby se dá provést převedením stránky, na níž se chyxba projevuje do utf-8 v kódu Python takto:
    >>> type(utext1)
    <type 'unicode'>
    
  • Nyní si vypíšeme na Terminálu kontrolu, jak převod dopadne:
    >>> print utext1
    ěščřžýáíé
    

Takže, nyní validátor opět errors také na naší HomePage zobrazuje, a také na dalších stránkách. Přiznávám, je jich relativně ještě dost (42), způsobené "ID menu wrap". Takže, zjišťujeme příčinu a samozřejmě chybu odstraníme. Stalo se! Jak se můžete přesvědčit, chyby již validator W3C na našem serveru nehlásí!


Autor: Květoslav (Kvido) Vícha PC-politika.cz

Kvido 17.05.2015 09:27 1,340 0 komentářů

0 komentářů

Zanechat komentář

Přihlaste se, abyste mohli zveřejnit komentář.
  • Žádné komentáře byly zveřejněny.
Nejnovější témata fóra
  Vlákno Zobrazení Odpovědi Poslední příspěvek
Zdielanie novinky na FB
v PHP-Fusion 9.0.3
134 6 Balin50
07-12-2018 17:27
XML Sitemap pro video
v Infuze, panely, vzhledy
536 15 zizub
02-12-2018 22:29
Novinky - posunutie pripnut...
v PHP-Fusion 9.0.3
69 1 RobiNN
02-12-2018 19:05
FormatFactory
v Pomoc
129 2 Kvido
01-12-2018 10:18
Administrácia
v PHP-Fusion 9.0.3
351 11 Balin50
13-11-2018 14:40
9.00.04
v Obecná diskuse
348 4 RobiNN
27-10-2018 12:55
Novinky - video
v Administrace obsahu
486 8 Kvido
18-10-2018 16:17
Přihlášení
Ještě nejste členem? Klikněte zde a zaregistrujte se.
Shoutbox
Chcete-li odeslat zprávu, musíte se přihlásit.
RobiNN
před 11 dny
mimir na tieto veci je tu fórum...
M
před 11 dny
PHP 9.0 jak aktivovat registrovaného uživatele ?
C
před 23 dny
ahoj
Nejčtenější novinky
Žádné novinky
Žádné novinky
Žádné novinky