Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Esta é uma função de higienização de entrada segura/forte?


Eu diria que é muito geral. Ele pode ser seguro para muitos usos, mas muitas vezes daria efeitos colaterais indesejados às cordas. Nem toda string deve ser escapada assim.
  • mysql_real_escape_string() deve ser usado apenas em consultas SQL. Melhor ainda, vincule parâmetros com PDO.
  • Por que você desejaria cobrir tags e codificar entidades antes de inserir em um banco de dados? Talvez faça isso na saída.
  • Para prevenção de XSS, htmlspecialchars() é mais seu amigo. Dê a ele o conjunto de caracteres como um argumento.

Então eu usaria mysql_real_escape_string() para consultas e htmlspecialchars() para ecoar strings enviadas pelo usuário. Também há muito mais para saber. Faça algumas leitura adicional .