![]() |
1
2
我的猜测(考虑到你惊人的代码缺乏)是你正在使用
htmlspecialchars()
。该函数已将PHP/5.4中第三个参数的默认值从
解决方案:始终提供第三个参数。 编辑:关于更新问题的一些随机想法 应用程序(据称)使用ISO-8859-1,但您强制浏览器转换为UTF-8:
当您收到表格时,您会将其处理为ISO-8859-1(实际上不是):
最后,您将从假的ISO-8859-1转换为UTF-8:
…然后将不受信任的输入注入SQL语句:
…即使您的数据库类显然支持准备好的语句:
此代码中的任何内容都不能说明原始问题中的问题( 显示 数据),但我的印象是,要么它在PHP/5.2中工作纯属偶然,要么数据库中的东西已经损坏(或两者都损坏)。 在这一点上,我通常建议将所有内容都切换到UTF-8,并永远忘记编码和转换。但还有一个额外的问题:您转换为HTML 之前 存储在数据库中。 所以,对不起,我完全迷路了。如果你认为这个答案不有用,我很乐意删除它。 |
![]() |
Karlo · PHP Sqlite PDO最新版本 3 月前 |
![]() |
Malte · 检查远程服务器上是否存在文件(使用PHP)[关闭] 3 月前 |
![]() |
Bard.Mus · 迁移后的数据库字符集环境 4 月前 |