Когда я отправлю форму с помощью form.submit()
, неанглийские символы (скажем, китайский, корейский) хранятся как искаженные в базе данных.данные искажены при использовании формы
Я использую следующий код в JSP:
<%
response.setContentType("text/html;charset=utf-8");
response.setCharacterEncoding("UTF-8");
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<form name="TestForm" enctype="application/x-www-form-urlencoded" accept-charset="UTF-8" action="<%=formaction%>" method="POST">
<table>
<tr><td>Source</td><td>:</td>
<td><input type="text" name="SOURCE"> </td></tr>
<tr><td>Category</td><td>:</td>
<td><input type="text" name="CATEGORY"> </td></tr>
<tr><td>Message</td><td>:</td>
<td><input type="text" name="MESSAGE"> </td></tr>
<tr><td><input type="submit" name="Submit" value="Ok"></td></tr>
</table>
</form>
</body>
</html>
Я устанавливаю параметры запроса, как Content-type
, CharSet
когда я отправить запрос Ajax. Он работает как ожидается в Ajax, но даже я установил эти атрибуты в форме, он не работает на form.submit()
.
вы можете дать больше информации о вашем дб? которые вы используете? также вам нужно настроить свой db, а также использовать utf-8, а также обработчик формы –
Я использую PostgreSQL с UTF-8 как charSet. Те же данные заполняются, когда я использую ajax. Тогда не должно быть проблем, правильно ли конфигурация db? – MatrixVJ