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

função para higienizar a entrada para o banco de dados Mysql


htmlentities() é desnecessário para tornar os dados seguros para SQL. É usado ao ecoar valores de dados para saída HTML, para evitar vulnerabilidades XSS. Essa também é uma questão de segurança importante da qual você precisa estar atento, mas não está relacionado ao SQL.

addlashes() é redundante com mysql_real_escape_string. Você terminará com barras invertidas literais em suas strings no banco de dados.

Não use citações mágicas. Esse recurso foi preterido por muitos anos. Não implante código PHP em um ambiente onde as aspas mágicas estejam habilitadas. Se estiver ativado, desligue-o. Se for um ambiente hospedado e eles não desativarem as aspas mágicas, obtenha um novo provedor de hospedagem.

Não use ext/mysql . Ele não oferece suporte a parâmetros de consulta, transações ou uso OO.

Atualização:ext/mysql foi preterido no PHP 5.5.0 (2013-06-20) e removido no PHP 7.0.0 (2015-12-03). Você realmente não pode usá-lo.

Use PDO e torne suas consultas mais seguras usando consultas preparadas .

Para obter mais detalhes sobre como escrever SQL seguro, leia minha apresentação Mitos de injeção de SQL e Falácias .