Что происходит, так это то, что все файлы в каталоге извлекаются, а затем выходят на страницу через PHP. Файлы, содержащиеся в $blacklist
, являются теми, которые не отражены.Как предотвратить появление слов, содержащих определенные буквы, на PHP?
Однако, как я могу изменить это так, чтобы, если имя файла (которое должно быть эхом) содержит буквы .txt
все вместе в строке в конце слова, оно затем помещается в черный список, так что это не повторилось.
Имеет ли это смысл?
<?php
$blacklist = array("one.jps", "two.txt", "four.html" , ".txt");
$files = array_diff(glob("*.*"), $blacklist);
foreach($files as $file)
echo "<div class='post'><a href='" . $_SERVER['PHP_SELF'] . "?file=" . $file . "'><p>" . $file . "</p></a></div>";
if(!empty($_GET["file"]) && !in_array($_GET["file"], $blacklist) && file_exists($_GET["file"]))
$thesource = htmlentities(file_get_contents($_GET["file"]));
?>
Помимо проблемы, с которой вы сталкиваетесь, ваш код открыт для множества серьезных угроз безопасности .... file_get_contents ($ _ GET ["file"]) чрезвычайно опасен ... – Shujaat