par
@rthur » 15 nov. 2016, 23:18
Toutes les variables que tu reçoit d'un utilisateur doivent être filtrées,
sans exception.
Dans ton exemple, il faut donc filtrer les variables tri, ordre et p
Pour ta variable tri spécifiquement, quelle valeur peut-elle avoir ?
Si c'est uniquement quelques nom de champs alors le mieux c'est effectivement de filtrer avec un in_array() comme proposé par tof73, idem pour ordre
Pour p si il s'agit que d'un entier pour le n° de page, alors tu peux utiliser le filtre FILTER_VALIDATE_INT
Voici un exemple pour in_array() :
<?php
if ( !empty($_GET['ordre']) && !in_array($_GET['ordre'], array('asc','desc') ) {
die("Paramètre ordre incorrect");
}
Toutes les variables que tu reçoit d'un utilisateur doivent être filtrées, [b]sans exception[/b].
Dans ton exemple, il faut donc filtrer les variables tri, ordre et p
Pour ta variable tri spécifiquement, quelle valeur peut-elle avoir ?
Si c'est uniquement quelques nom de champs alors le mieux c'est effectivement de filtrer avec un in_array() comme proposé par tof73, idem pour ordre
Pour p si il s'agit que d'un entier pour le n° de page, alors tu peux utiliser le filtre FILTER_VALIDATE_INT
Voici un exemple pour in_array() : [php]<?php
if ( !empty($_GET['ordre']) && !in_array($_GET['ordre'], array('asc','desc') ) {
die("Paramètre ordre incorrect");
}[/php]