Posted By: Case (United Steaks of America) on 'CZwww'
Title: Form a kodovani cestiny (ISO-8859-2)
Date: Fri Nov 24 00:25:39 2000
Zdar,
potykam se s timhle problemem cely den a nevidim zadne rozreseni, muzete nekdo
pomoct? Problem je asi takovyhle:
Mam HTML stranku (resp. JSP ale je to pochopitelne i pro lidi co neznaji Javu)
index.jsp
<%@ page contentType="text/html; charset=ISO-8859-2" %>
<HTML>
<BODY bgcolor="white">
<FORM TYPE=POST ACTION=chartest.jsp>
Napiste retezec:<br>
<input TYPE=text name=textField>
<input TYPE=submit name=submit Value="Submit">
</FORM>
</BODY>
</HTML>
a nasledne chartest.jsp
<%@ page contentType="text/html; charset=ISO-8859-2" %>
<html>
<body>
Vraceny vysledek:
<%
String str = request.getParameter("textField");
out.println("<BR>["+str+"]<P>");
%>
</body>
</html>
Jde tedy o to ze na prvni stranku jsem nastavil do kodovani ISO-8859-2 a pokud
ve vstupnim radku napisu ceske znaky (napriklad s~ c~) a poslu je do druheho
chartest.jsp zobrazi se mi blbosti.
Podle ISO-8895-2 je kod s~ cislo 154 (0x9A). Zjistil jsem ze se tam vsak
posila misto tohoto cisla cislo 185 (0xB9). Pokud ovsem zmenim kodovani
index.jsp tedy te vstupni stranky na ISO-8859-1, posle se spravna hodnota !
To pak ale vubec nechapu. Kdyby na to prohlizec dlabal (na pouzite kodovani,
pro odesilani POSTem nebo GETem) tak je mi to jasny, ale on na to nedlabe a
opravdu to nejak prekope podle pouziteho kodovani ... bohuzel uplne
nesmyslne, nebot to co by melo chodit tedy poslani ze stranky ISO-8859-2 na
stranku s ISO-8859-2 nechodi a misto toho slape z ISO-8859-1 na ISO-8859-2,
coz je ovsem na prd v pripade ze na prvni strance nechci pouze posilat z
FORMSu ceske stringy ale taky je na te strance chci zobrazit.
Nevite nekdo co s tim ?
Jo a jedu pod Woknama (takze se tam mozna bude propagovat Cp1250)
Dik,
Case
-----
posted by Case
Inhale "Solution" ... Exhale "Vision"
Inhale "What I'm" ... Exhale "What I think I'm"
Inhale "Power" ... Exhale "Force"
[H.Rollins]