这次是利用结合FCKEditor(JS文本编辑器)和JSVALIDATION(JS表单检验)来做一个留言板,并把数据保存在MySQL数据库中。。
但出现了中文乱码的问题。
在MySQL上面看到的数据是乱码的。。
原因是:
1)MySQL数据库上面的表单的字符集编码不是UTF-8;
这时可以用下面的语句:
修改MySql数据表的字符集
ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;
具体方法: alter table 表单名字 convert to character set 设置的字符集(如:UTF8);
2)MySQL数据库的表单上面某些字段的编码格式不是UTF-8;
这时可以使用Navicat这个工具去查看那个字段的编码;(字段默认编码是字符集的编码)
3)从HTML上面传送过到Servlet前的数据编码不是UTF-8;
利用MyEclipse来转换HTML的编码。
不过这里,我今天将一个HTML文件从GBK转换到UTF-8格式。
然后测试,发现还是乱码,这个我很郁闷!!
更郁闷的是:我重新建立一个以UTF-8格式的HTML文档,编写一次就可以了。。
之前那个无论怎么复制粘贴,转格式都不行。
4)Servlet上面接受和返回的信息都要UTF-8;
这里可以通过这两句话来实现。
response.setContentType("text/html;charset=utf-8");
request.setCharacterEncoding("UTF-8");
这是今天所遇到的情况。以及一些解决方法。。。