防止html注入

时间:2012-12-12 22:13:28

标签: php html code-injection htmlspecialchars html-injections

所以我知道你可以做$words = htmlspecialchars($_POST['name']); 在php中逃避特殊字符并防止一些html注入。

但是我在实际将它实现到我的PHP代码中时遇到了麻烦。我正在阅读你必须在显示你正在向网站的观众展示的任何内容之前使用它,但我很遗憾如何做到这一点。我是php的初学者。

所以我能够执行sql注入部分,但是这里是我被困住的代码的一部分,如上所述。

我正在尝试阻止html注入标题博客和标记

$result= mysql_query("SELECT * FROM Bpost");

echo '<div class = "blog" align = "center">';
    while($row = mysql_fetch_array($result))
        {

        echo "<div class = 'tname'>";
        echo $row['title']; 
        echo '</div>';

        echo '<div class = "bpost">';
        echo $row['blog'];
        echo '</div>';

        echo '<div class = "tag">';
        echo $row['tags'];
        echo '</div>';
        echo '</br>';

        }
echo '</div>';

如果你需要我其他东西的示例代码,请告诉我。对我而言,这似乎已经足够了。

1 个答案:

答案 0 :(得分:2)

只需将echo $row['title'];更改为echo htmlspecialchars($row['title']);(并重复所有其他用户生成的数据)即可进行设置。