0

我正在尝试将文本上传到我的数据库中。当用户输入某些字符时,我不断收到编码文本。例如,如果用户输入“Jalapeño”,我最终会在我的数据库中得到“Jalape%C3%B1o”。

我知道这是因为“ñ”被读作“%C3%B1”......

我不完全确定如何转换所有潜在的重音字符,我已经查看了 rewurldecode 和其他人,但我想知道这里是否有一个快速的解决方案。任何建议都会很棒。谢谢!

4

2 回答 2

1

确保您的数据库使用正确的字符集和排序规则(通常您需要 UTF-8)。还要确保您设置了连接字符集并发送了正确的标头。

例如 mysql:

mysql_connect();
mysql_set_charset("utf8");
header('Content-Type: text/html; charset=utf-8');

您还可以使用htmlentities将特殊字符转换为 HTML 实体,但您仍需要确保您的数据库排序规则和连接设置正确。

于 2013-08-13T10:04:50.710 回答
0

你的角色是 urlencoded。要正确显示它,您必须对其进行解码。但是 url 编码并不意味着在数据库中保存数据时使用。作为 dtech 点,您必须使用 utf8 字符集。

于 2013-08-13T10:29:47.007 回答