如何清理用户在评论中发布的PHP

时间:2017-07-30 05:16:39

标签: javascript php html5 forms

我正在创建一个评论系统,用户可以发布评论,这些评论也可以包含基本HTML,包括代码。像这样:

<pre><code class="language-php"><?php
echo 'Test';
?></code></pre>

问题是我无法清理这一个服务器端,因为注释中的PHP代码实际上会在我的服务器上运行。在提交表单之前,我尝试使用这样的JavaScript:

$("#comment").val() = $("#comment").val().replace("<?", "&lt;?").replace("?>", "?&gt;");

但是,这会导致语法错误。

我有什么方法可以安全地发布包含PHP的用户评论吗?

1 个答案:

答案 0 :(得分:0)

使用jquery设置input元素的新值,您需要使用此语法

$("#yourElement").val(newValue);

所以请将您的javascript代码更改为:

$("#comment").val($("#comment").val().replace("<?", "&lt;?").replace("?>", "?&gt;"));

阅读:http://api.jquery.com/val/