Как предотвратить атаки внедрения кода в PHP?
Я немного сбит с толку, в PHP так много функций, и некоторые используют это, некоторые используют это. Некоторые люди используют:htmlspecialchars()
, htmlentities()
, strip_tags()
так далее
Какой из них правильный и что вы, ребята, обычно используете?
Это правильно (посоветуйте мне лучше, если таковые имеются):
$var = mysql_real_escape_string(htmlentities($_POST['username']));
Эта строка может предотвратить инъекцию MySQL и атаку XSS ??
Btw, is there any other things I need to pay attention besides XSS attack and MySQL injection?
EDIT
Заключить:
Если я хочу вставить строку в базу данных, мне не нужно использоватьhtmlentities
Просто используйтеmysql_real_escape_string
, При отображении данных используйтеhtmlentities()
Это то, что вы все имеете в виду ??
Суммировать:
mysql_real_escape_string
used when insert into database
htmlentities()
used when outputting data into webpage
htmlspecialchars()
used when?
strip_tags()
used when?
addslashes()
used when?
Может кто-нибудь заполнить вопросительный знак?