Mysql 或 PHP 无法正确转换引号
我有一个文本区域,用户可以在其中输入一些信息。一些用户在他们的信息中输入单引号和双引号,我最终在页面中看到的是 â�� 以及单/双引号应该出现的所有类型的奇怪字符。我只是使用函数 mysqli_real_escape_string() 和 trim() 来存储信息,并使用 htmleneties() 在 php 中显示它们。
在我的数据库中,我已经看到了 â�� 字符,那么为什么单/双引号是属性存储的呢?谢谢!
I have a textarea where users enter some information. Some users enter single and double quotes in their information and what i end up seeing in the page is � and all types of weird characters where single/double quotes are suppose to be. I simply use the function mysqli_real_escape_string() and trim() to store the information and htmleneties() to display them in php.
I my database I already see the � characters so why the single/double quotes are property stored? Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
字符集不一致。确保数据库、数据库连接、数据库表、表列、提供页面时使用的内容类型标头以及页面的内容类型元标记使用相同的字符集。您还希望避免在多字节编码上使用 PHP 字符串函数,因为它们仅对 iso-8859-1 编码文本安全。如果您计划接受和显示英语以外的语言,您可能应该使用 UTF-8。
Inconsistent character sets. Make sure the same character set is used on the database, the database connection, the database table, the table column, the content-type header used when serving the page, and the content-type meta tag of the page. You also want to avoid using PHP string functions on multibyte encodings as they're only safe for iso-8859-1 encoded text. If you plan to accept and display languages other than English you should probably be using UTF-8.