【问题标题】:Smarty outputting HTML with scripts and new line charsSmarty 使用脚本和换行符输​​出 HTML
【发布时间】:2012-10-06 22:22:12
【问题描述】:

该死。在 Smarty 模板中输出一些变量时遇到问题。希望有人能帮帮我。

我正在使用 textarea 获取用户输入,它可以包含来自用户的任何内容(甚至是脚本标签)...

我将它分配给Smarty并打印变量,我将它写在模板中如下

{$description|nl2br}

但它按原样显示
标签,而不是换行。

所以为了解决这个问题,我使用了

{$description|nl2br nofilter}

它适用于
标签,但用户也可以输入一些脚本。那些脚本(标签中的javascript)正在执行......

我想要这样的东西,我可以将换行符转换为
并只执行
标签,其他标签应该安全打印。

这里有谁知道,如何让它与 Smarty 很好地协同工作?

【问题讨论】:

    标签: php smarty fuelphp


    【解决方案1】:

    听起来您正在寻找类似{$description|escape:'htmlall'|nl2br} 的东西。

    但是您的描述听起来好像您打开了$escape_html,这可能会使您难以获得您正在寻找的那种细粒度的控制。尝试使用和不使用 nofilter,因为我不能 100% 确定您的设置方式。

    【讨论】:

    • 是的,我打开了 $escape_html。 {$description|escape:'htmlall'|nl2br nofilter} /**这对我很有效**/干杯.. :)
    猜你喜欢
    • 2019-12-31
    • 1970-01-01
    • 2022-01-14
    • 2014-10-24
    • 2012-11-29
    • 1970-01-01
    • 2012-06-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多