Я немного смущен, в PHP есть так много функций, и некоторые используют это, некоторые используют это. Некоторые люди используют: htmlspecialchars(), htmlentities(), strip_tags() т.д.
Что является правильным и что вы, ребята, обычно используете?
Правильно ли это (посоветуйте мне лучше, если таковые имеются):
$var = mysql_real_escape_string(htmlentities($_POST['username']));
Эта строка может предотвратить атаку MySQL и XSS-атаку?
Кстати, есть ли другие вещи, которые мне нужно обратить внимание, кроме атаки XSS и MySQL-инъекций?
РЕДАКТИРОВАТЬ
Заключить:
Если я хочу вставить строку в базу данных, мне не нужно использовать htmlentities, просто используйте mysql_real_escape_string. При отображении данных используйте htmlentities(), это то, что вы все подразумеваете?
Суммировать:
-
mysql_real_escape_stringиспользуемый при вставке в базу данных -
htmlentities()используемый при выводе данных на веб-страницу -
htmlspecialchars()используется когда? -
strip_tags()используется, когда? -
addslashes()используется когда?
Может ли кто-нибудь заполнить вопросительный знак?