保护PHP代码而不丢失html标签?

时间:2018-01-21 11:13:14

标签: php html tags alt

替代htmlspecialchars而不丢失html标签?

例如:

<?php
    $getNames = $odb -> query("SELECT * FROM `ad`");
    while($Names = $getNames -> fetch(PDO::FETCH_ASSOC)) {
        echo '<div class="card-box">'.$Names['ads'].'';
        echo '<center>'.$Names['endorse'].'</center></div>';
    }
?>

但是htmlspecialchars剥离了标签,因此输出如下。

<p style="text-align: center;"><strong>testttttttttttttttttttttttttttttt</strong></p>

如何在不丢失标签的情况下保护我的PHP代码?

1 个答案:

答案 0 :(得分:0)

PHP具有针对跨站点脚本(XSS)攻击的htmlspecialchars()htmlentities()strip_tags()等功能。选择功能取决于应用情况。您应该使用一个或另一个用户提交的内容来防止XSS攻击,即在插入数据库之前。

您应该注意与XSS不同的SQL注入攻击。使用预准备语句是针对SQL注入攻击的最佳解决方案。