Script pour protéger les formulaires PHP de l'injection SQL
Bonjour à tous,
J'ai développé un script permettant de transformer les variables issues de formulaires afin d'éviter l'injection SQL.
Le voici :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| <?php
/***************************************************************
Cette fonction permet d'exclure de la variable tous les mots-clés dangereux.
Elle retourne la variable en minuscule après avoir retiré les mots clés dangereux,
les balises et après avoir ajouté des slashs à chaque quote ou guillemet.
****************************************************************/
function protege($var){
//Mots à exclure de la variable
$tab_exc=array('SELECT','FROM','WHERE','UNION','INSERT','INTO','DROP','ORDER','OR','#','/*','*/','%','CHAR(','CONV(','DATABASE()','USER()');
//Exclue les mots du tableaux de la variable
for($i=0;$i<17;$i++){
$var=str_replace($tab_exc[$i],'',strtoupper($var));
}
//Ajoute des slash derrière les quotes
$var=addslashes($var);
//Supprime les balises
$var=strip_tags($var);
return strtolower($var);
}
?> |
Dites moi ce que vous en pensez, peut-elle être efficace.
Quelles sont ses limites...
Merci.