从Microsoft Word复制/粘贴到PHP表单

时间:2015-05-14 15:46:47

标签: php character-encoding

我们的数据库接受ISO-8859-1,我们的表单包含accept-charset=ISO-8859-1,但是当用户从Word粘贴到我们的某个文本字段中时,某些字符会丢失。根据他们复制的内容,我们会收到诸如之类的乱码。

例如,粘贴使用四钻子弹的项目符号列表时会显示一个问题框。

如何确保这些字符不会显示在字段中,或者至少不会使它超过我们的格式化功能?

1 个答案:

答案 0 :(得分:0)

我的猜测是Word使用的可怕的花哨引号。你的字符集不支持6或9字形引号(我称之为“花哨的引号”)。

如果你可以为UTF8切换你的字符集,它应该都可以。否则,您将需要清理复制粘贴的输入并替换数据库字符集不支持的任何字符。

编辑:我误读了你的帖子,但我认为它与我上面发布的内容类似。由于您的表单设置为接受ISO-8859-1,我打赌文本在它甚至到达您的表单处理代码之前是乱码。也许删除表单的Statement st = con.createStatement(); ResultSet rs = st.executeQuery("SHOW ENGINE INNODB STATUS"); while(rs.next()){ log.info(rs.getString(1)); log.info(rs.getString(2)); log.info(rs.getString(3)); } 属性以支持粘贴的符号,然后在插入数据库之前清理服务器端。