Bom pessoal hoje venho trazer para vocês uma pequena função que identifica e remove palavras reservadas Sql
Bom sintam-se a vontade para modificar a função abaixo, ela pode e deve ser melhorada
function antiInject($string){
// remove palavras que contenham sintaxe sql
$string = preg_replace("/(from|select|insert|delete|where|drop table|show tables|#|*|--|)/i","",$string);
$string = trim($string);//limpa espaços vazio
$string = strip_tags($string);//tira tags html e php
if(!get_magic_quotes_gpc())
$string = addslashes($string);//Adiciona barras invertidas a uma string
return $string;
}
Bom a função acima recebe uma string como parâmetro e faz a verificação caso tenha alguma palavra reservada sql será removida e no final é retornado o uma string sem nenhuma palavra reservada.
Como usar:
//resgata o nome do formulário
$nome = $_POST['nome'];
//passa por parâmetro o nome para a verificação
antiInject($nome);
//ou simplesmente
$nome = antiInject($_POST['nome']);
Como podem ver é muito fácil de se utilizar basta passar a variável que recupera o campo do formulário por parâmetro e a função irá remover as palavras reservadas do SQL simples assim façam bom uso.
Bom venho a repetir a função pode e deve ser melhorada ou modificada ao seu gosto.
Dúvidas, problemas, sugestões comentem abaixo se gostaram mandem um LIKE se não gostaram também mandem um LIKE e comentem o que não gostaram sem xingar loucamente
créditos:
_kinght_
OBS: Tutorial / Dica feito exclusivamente para XPZone.net, caso alguém resolva publicar esse post em outro fórum coloque os créditos de quem criou o tópico no caso eu "_kinght_" e de qual fórum você copiou o post "xpzone.net".
Bom sintam-se a vontade para modificar a função abaixo, ela pode e deve ser melhorada
function antiInject($string){
// remove palavras que contenham sintaxe sql
$string = preg_replace("/(from|select|insert|delete|where|drop table|show tables|#|*|--|)/i","",$string);
$string = trim($string);//limpa espaços vazio
$string = strip_tags($string);//tira tags html e php
if(!get_magic_quotes_gpc())
$string = addslashes($string);//Adiciona barras invertidas a uma string
return $string;
}
Bom a função acima recebe uma string como parâmetro e faz a verificação caso tenha alguma palavra reservada sql será removida e no final é retornado o uma string sem nenhuma palavra reservada.
Como usar:
//resgata o nome do formulário
$nome = $_POST['nome'];
//passa por parâmetro o nome para a verificação
antiInject($nome);
//ou simplesmente
$nome = antiInject($_POST['nome']);
Como podem ver é muito fácil de se utilizar basta passar a variável que recupera o campo do formulário por parâmetro e a função irá remover as palavras reservadas do SQL simples assim façam bom uso.
Bom venho a repetir a função pode e deve ser melhorada ou modificada ao seu gosto.
Dúvidas, problemas, sugestões comentem abaixo se gostaram mandem um LIKE se não gostaram também mandem um LIKE e comentem o que não gostaram sem xingar loucamente
créditos:
_kinght_
OBS: Tutorial / Dica feito exclusivamente para XPZone.net, caso alguém resolva publicar esse post em outro fórum coloque os créditos de quem criou o tópico no caso eu "_kinght_" e de qual fórum você copiou o post "xpzone.net".
Editado por um moderador: