gpt4 book ai didi

PHP:如何禁止用户生成的内容中包含 HTML 内容?

转载 作者:可可西里 更新时间:2023-11-01 12:45:36 24 4
gpt4 key购买 nike

我经营着一个小众社交网站。我想禁止用户发布消息中的 HTML 内容;例如嵌入式视频等。在我插入数据库之前,php 中有什么选项可以清理它。

最佳答案

基本的解决方案有以下三种:

  1. 从帖子中删除所有 HTML 标签。在 PHP 中,您可以使用 strip_tags() 执行此操作功能。
  2. 对所有字符进行编码,这样如果用户键入 <b>hello</b>它显示为 &lt;b&gt;hello&lt;/b&gt;在 HTML 中,或 <b>hello</b>在页面本身上。在 PHP 中,这是 htmlspecialchars() 功能。 (注意:在这种情况下,您通常会将内容按原样存储在数据库中,并在输出内容的任何地方使用 htmlspecialchars。)
  3. 使用 HTML 清理器,例如 HTML Purifier .这允许用户使用某些 HTML 格式,例如粗体/斜体,但会阻止恶意 Javascript 和您希望的任何其他标签(即在您的情况下为 <object>)。您可能希望也可能不希望在存储到数据库之前执行此操作,但无论哪种情况,您都必须始终在输出之前执行此操作。

关于PHP:如何禁止用户生成的内容中包含 HTML 内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9089471/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com