Не предполагается сохранять в БД, например, <img src=\"image.png\"></img>
для предотвращения SQL-инъекций?
Нет, SQL-инъекции часто неправильно понимаются, главным образом потому, что они на самом деле не имеют ничего общего сSQL, как они просто строковые манипуляции.Вам не нужно изменять данные, которые вы вставляете в базу данных, вам нужно всего лишь изменить строку , которую вы отправляете на сервер базы данных как запрос (если вы не сделаете мудрый выбор и не будете использовать подготовленные операторы вместо экранирования).строка запроса).После сохранения данные должны быть в исходном состоянии.
Является ли htmlentities хорошим кандидатом для предотвращения атак XSS?
Да, но htmlentities()
хорошо дляотправка данных в виде вывода в браузер, а не для сохранения их в базе данных (поскольку данные из БД могут использоваться для чего-то другого, кроме веб-страницы).
Должен ли я включить magic_quotes?
Нет, вы должны использовать подготовленные заявления.