繁体   English   中英

PHP&MySQL特殊字符编码问题

[英]PHP & MySQL special character encoding problem

当用户提交一个特殊字符♠ 它以â 的形式存储在MySQL数据库中,如果用户想更改它而不是将其显示为♠ 其显示为â 我怎么能解决这个问题,以便其dsiplayed早在♠ 并另存为♠

附带说明一下,如何使用PHP保存特殊字符?

我正在使用PHP和MySQL

  1. 用户输入数据
  2. 您转义该数据以避免SQL注入(请不要将特殊字符转换为等效的html代码)
  3. 数据将完全按照用户输入的方式存储在数据库中
  4. 您拉回原始数据
  5. 您可以通过字符编码功能或等效功能将原始数据运行,以将特殊字符转换为其html代码,从而避免跨站点脚本编写或html注入

那可能是个问题。
如果要将特殊字符转换为实体,则在输出为字段值/文本区域内容时必须对它们进行html编码两次 但这可能会与其他字符(全部成为其实体表示形式),引号,方括号等混淆。 如果这是您的要求-继续。 但是,在我看来,编辑这样的文本可能是一团糟。
这就是为什么最好不要让用户使用实体。 他们为什么不能输入符号本身?

至于数据库中的特殊字符-只需在数据库和HTML中都使用UTF-8编码即可。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM