21-11-2008, 10:46 PM
Et bien, pour te protéger efficacement des injections, il te suffit de vérifier les données que tu vas utiliser dans ta requête.
Il faut vérifier qu'il s'agit bien de ce que tu attends.
Admettons que tu permettes à tes membres de choisir un choix dans une liste (un pays, par exemple). Dans ton script de traitement, il faut que tu vérifies si la valeur entrée est bien autorisée.
Si tu attends l'identifiant d'un membre, tu dois vérifier que c'est bien un entier positif et qu'il est bien présent dans ta base.
Si tu attends du texte arbitraire (un message de forum, par exemple), tu ne peux rien faire de plus que de l'échapper (avec mysql_real_escape_string()).
Voilà, c'est simple sur le papier, mais en pratique, le plus difficile est de penser à tout.
Sephi-Chan
Il faut vérifier qu'il s'agit bien de ce que tu attends.
Admettons que tu permettes à tes membres de choisir un choix dans une liste (un pays, par exemple). Dans ton script de traitement, il faut que tu vérifies si la valeur entrée est bien autorisée.
Si tu attends l'identifiant d'un membre, tu dois vérifier que c'est bien un entier positif et qu'il est bien présent dans ta base.
Si tu attends du texte arbitraire (un message de forum, par exemple), tu ne peux rien faire de plus que de l'échapper (avec mysql_real_escape_string()).
Voilà, c'est simple sur le papier, mais en pratique, le plus difficile est de penser à tout.
Sephi-Chan