【问题标题】:Codeigniter Strip HTML tags from inputCodeigniter 从输入中去除 HTML 标签
【发布时间】:2010-04-01 11:57:09
【问题描述】:

从输入中去除 html 标签的最佳方法是什么?

如何在验证输入时删除 HTML 标签

$this->form_validation->set_rules('description', 'Description', 'trim|xss_clean');

是否需要在验证规则中添加自定义回调方法?

【问题讨论】:

    标签: php codeigniter


    【解决方案1】:

    根据this,可以直接将strip_tags添加到set_rules()

    任何接受一个参数的原生PHP函数都可以作为规则使用,如htmlspecialchars、trim、MD5等。

    所以它可能看起来像这样:

    $this->form_validation->set_rules('description', 'Description', 
                                      'trim|xss_clean|strip_tags');
    

    【讨论】:

      【解决方案2】:

      我需要添加自定义回调吗 验证规则的方法?

      我想是的,你也可以这样做:

      $stripped = strip_tags($content);
      

      【讨论】:

        【解决方案3】:

        请使用此代码

        $this->form_validation->set_rules('description', 'Description', 
                                          'trim|strip_tags|xss_clean');
        

        【讨论】:

          【解决方案4】:

          对应用程序输入的一揽子过滤完全是假的。它会破坏潜在有效的输入,并且不能可靠地防止 XSS。避免 XSS 的唯一方法是正确转义您插入到 HTML 在输出阶段的每个文本字符串,例如。使用htmlspecialchars

          CodeIgniter 的xss_clean 进行了一组非常生硬和愚蠢的字符串修改,即使是非常低标准的“XSS 保护”工具也是如此;你不应该在任何情况下使用它。

          【讨论】:

            猜你喜欢
            • 2012-08-14
            • 1970-01-01
            • 2014-11-16
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2019-01-06
            • 2011-03-11
            相关资源
            最近更新 更多