Защита от инъекций html
Так что я знаю, что вы можете сделать $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 ответ
Просто поменяй echo $row['title'];
в echo htmlspecialchars($row['title']);
(и повторите для всех других пользовательских данных), и все готово.