Я немного смущен, в 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()
используется когда?
Может ли кто-нибудь заполнить вопросительный знак?