【问题标题】:Safely presenting stored TinyMCE data安全呈现存储的 TinyMCE 数据
【发布时间】:2013-10-30 12:41:02
【问题描述】:

我们在安全地呈现通过 TinyMCE 编辑器发送和存储的电子邮件时遇到了一些困难。

内容深深嵌入到表格和 div 的层次结构中,看看 TinyMCE 是如何养成偶尔留下额外内容的习惯,比如说

</table>

这势必会给网站的 html 结构带来很大的不稳定性。

该站点运行 PHP (Symfony 1.4) 并支持 jQuery。

现在,我完全意识到我可能会以错误的心态和工具来解决这个问题,但我只是想找到一种方法来:
捕获 HTML,防止包含 HTML 的 PHP 变量在层次结构中提供备用结束标签和结束标签的标签。

您将如何解决这个障碍?我知道

strip_tags($var)

PHP 功能,但我希望在安全性和稳定性允许的范围内保持 HTML 标记完整,以便尽可能接近其预期呈现电子邮件。

【问题讨论】:

    标签: php html tinymce symfony-1.4


    【解决方案1】:

    解决此问题的常用方法是将文本存储在 2 个数据库列中(例如 texttext_formatted)。

    当您从所见即所得编辑器中保存文本时,您应该格式化您的文本并保存到text_formatted(带有一些自定义解析功能,它应该关闭标签,删除一些字符等。我认为,有一些开源解析功能)。

    然后,在输出中,您应该使用格式化文本

    【讨论】:

      猜你喜欢
      • 2012-02-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-05
      • 2014-06-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多