Bylo by to ale milé, dostáat každoročně od úřadu dárek [úsměv].
Proč to nejde na bloguje.cz nevím, ale nejspíš to bude obdobná příčina jako u mě.
Komentář je obyčejný text, který se použije jako součást stránky. Co do něj napíšeš, to se vloží - ale ty nemusíš psát jenom text, můžeš vepsat i věci z HTML, třeba <script>...</script>, kterým se vkládá javascript. Pouhá návštěva kohokoliv na stránce by ho pak spustila. Na první pohled to nevypadá nijak nebezpečně - ale takhle spuštěný kód by se třeba mohl podívat, jestli nejsou otevřená i jiná okna prohlížeče. A jestli v některém z nich není třeba uživatel někde přihlášený. Třeba do pošty na seznamu. A kdyby ano, mohl by třeba založit mail. Nebo ho poslat. Nebo vymazat... tomuhle se říká cross-site scripting a je to skutečně reálné riziko.
Takže já než komentář uložím, pustím na něj funkci, která klíčové znaky < > " a & převede na jejich opis, entitu - browser pak ví, že znak < nemá interpretovat jako začátek příkazu, ale pouze ho má zobrazit.
A teď abecedy - většinou se odesílají jako html nebo unicode entity. Tj. zakódované pomocí znaků ampersand, hash, písmene x, hexadecimálním číslem znaku a středníkem. Takhle: ఋ Když tohle je ve zdrojovém kódu stránky, prohlížeč ví, že je to příkaz pro zobrazení Unicode znaku 0C0B: ఋ (pokud dané písmo má v systému). Ale výše zmíněné převedení mi ze znaku & udělalo entitu, opis, a tudíž ho vyřadilo z provozu. Už neoznačuje začátek příkazu, stal se z něj pouze "zobrazení znaku &" - takže místo znaku ఋ se zobrazí ఋ
Ve zdrojovém kódu stránky je místo ఋ ("zobraz znak 0C0B") tohle &#x0C0B; ("zobraz znak ampersand a vykresli znaky #x0C0B;")
~