使用数据库中存储的封闭HTML生成HTML

使用数据库中存储的封闭HTML生成HTML,html,delphi,encoding,utf-8,delphi-xe,Html,Delphi,Encoding,Utf 8,Delphi Xe,我正在生成包含动态内容的HTML页面。用户可以通过添加页脚对其页面进行个性化设置。我的用户控制面板将页脚存储在UFT-8表(MySQL)中。页脚本身可以有HTML 当我生成页面时,我将页脚插入到一个DIV中。我的doctype是 '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">'+ '

我正在生成包含动态内容的HTML页面。用户可以通过添加页脚对其页面进行个性化设置。我的用户控制面板将页脚存储在UFT-8表(MySQL)中。页脚本身可以有HTML

当我生成页面时,我将页脚插入到一个DIV中。我的doctype是

'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">'+
               '<html xmlns="http://www.w3.org/1999/xhtml">'+#10+
               '<head>'+#10+
               '<meta http-equiv="content-type" content="text/html;charset=utf-8" />'+#10+
“”+
''+#10+
''+#10+
''+#10+
这是可行的,但重读和“•”等字符不能正确显示。我尝试过使用HTMLEscape,但它破坏了页脚HTML

我的问题是:在不迭代所有特殊字符并逐个转义它们的情况下,最简单的方法是什么

  • 编译器是否发出有关字符串转换问题的警告

  • 能否将HTML保存到文件中,并使用记事本++之类的编辑器打开它,以验证它是否为UTF-8编码

  • web服务器是否将设置为
    text/html;字符集=utf-8


您是否将内容作为UTF-8提供?整个过程中是否使用unicode字符串?字符是否已保存在客户端->数据库->客户端进程中?(如果他们做不到这一点,他们将永远无法到达客户端。)通用HTML转义只需要用于编码“特殊字符”,如
。此外,与直接存储HTML不同,我建议存储一个标记/标记,稍后可以生成无注入HTML。DB存储是正确的。另外,当页脚没有任何HTML时,我的动态页面下的显示是正常的,即使有重音字符,只要使用HTMLEscape即可。我不确定第3点。我正在使用ICS组件。我查一下。谢谢