我正在尝试将文本上传到我的数据库中。当用户输入某些字符时,我不断收到编码文本。例如,如果用户输入“Jalapeño”,我最终会在我的数据库中得到“Jalape%C3%B1o”。
我知道这是因为“ñ”被读作“%C3%B1”......
我不完全确定如何转换所有潜在的重音字符,我已经查看了 rewurldecode 和其他人,但我想知道这里是否有一个快速的解决方案。任何建议都会很棒。谢谢!
我正在尝试将文本上传到我的数据库中。当用户输入某些字符时,我不断收到编码文本。例如,如果用户输入“Jalapeño”,我最终会在我的数据库中得到“Jalape%C3%B1o”。
我知道这是因为“ñ”被读作“%C3%B1”......
我不完全确定如何转换所有潜在的重音字符,我已经查看了 rewurldecode 和其他人,但我想知道这里是否有一个快速的解决方案。任何建议都会很棒。谢谢!
确保您的数据库使用正确的字符集和排序规则(通常您需要 UTF-8)。还要确保您设置了连接字符集并发送了正确的标头。
例如 mysql:
mysql_connect();
mysql_set_charset("utf8");
header('Content-Type: text/html; charset=utf-8');
您还可以使用htmlentities
将特殊字符转换为 HTML 实体,但您仍需要确保您的数据库排序规则和连接设置正确。
你的角色是 urlencoded。要正确显示它,您必须对其进行解码。但是 url 编码并不意味着在数据库中保存数据时使用。作为 dtech 点,您必须使用 utf8 字符集。