0

我有一个简单的脚本,我用它来发布一个世界,然后用 list_of_files.txt 中的行显示它。刚刚注意到我可以发布 JavaScript、PHP 和 Html。我如何剥离这个?

$files=file('list_of_files.txt');

if ($_SERVER['REQUEST_METHOD'] == 'POST'){ 
    foreach($files as $list)
    {
        $extension = $_POST['extension'];
        echo trim($list) . trim($extension);
        echo "</div>";
    }
}else{ 
?>  
4

2 回答 2

4

strip_tags($str) ( http://php.net/manual/de/function.strip-tags.php ) 将删除所有HTML 标签

例子:

name=<strong>Finn</strong>&last_name=<script>alert('XSS');</script>

PHP:

$normal = $_POST['name']; //<strong>Adam</strong>
$stripped = strip_tags($_POST['name']); //Adam
于 2013-08-27T13:13:07.570 回答
3

你在找strip_tags吗?

此函数尝试返回一个字符串,其中包含从给定 str 中剥离的所有 NULL 字节、HTML 和 PHP 标记。它使用与 fgetss() 函数相同的标签剥离状态机。

如果你想输出,你可以使用htmlspecialchars.

The translations performed are:

   '&' (ampersand) becomes '&amp;'
   '"' (double quote) becomes '&quot;' when ENT_NOQUOTES is not set.
   "'" (single quote) becomes '&#039;' (or &apos;) only when ENT_QUOTES is set.
   '<' (less than) becomes '&lt;'
   '>' (greater than) becomes '&gt;'
于 2013-08-27T13:11:18.777 回答