Sécurisez vos inputs

Statut
N'est pas ouverte pour d'autres réponses.

___Romaiin

imagination.
Premium
Inscription
12 Janvier 2014
Messages
2 658
Réactions
979
Points
12 718
Salut à tous, on se retrouve pour un court tuto sur comment sécuriser vos inputs utilisateurs. Dans notre cas c'est un INT que nous voulons sécuriser.

Voici la form (Repris de mon site)
HTML:
<div class="form-group">
                <label class="col-md-4 control-label" for="categorie">Catégorie</label>
                <div class="col-md-4">
                    <select id="categorie" name="categorie" class="form-control">
                        <option value="1">Services Lobbys PS3</option>
                        <option value="2">Services Lobbys Xbox 360</option>
                        <option value="3">Services GFX</option>
                        <option value="4">CMS / WEB</option>
                        <option value="5">Comptes MineCraft </option>
                        <option value="6">Comtes NetFlix </option>
                        <option value="7">Comptes PSN </option>
                        <option value="8">Comptes Xbox </option>
                        <option value="9">Comptes lobby instantané PS3</option>
                        <option value="10">Comptes lobby instantané Xbox 360</option>
                        <option value="11">Cartes PSN</option>
                        <option value="12">Cartes Xbox Live</option>
                        <option value="13">Cartes d'abonnement PS+ / Xbox Live / etc</option>
                        <option value="14">Crédits FIFA 15</option>
                        <option value="15">Crédits FIFA 14</option>
                        <option value="16">Autres</option>

                    </select>

                </div>

            </div>

D'abord, en tous premier lieu, passer un filtre qui va dire que c'est du INT (Enlever le reste)
PHP:
$categories = filter_var($_POST['categorie'], FILTER_SANITIZE_NUMBER_INT);
Ensuite, on sait que cela ne va pas descendre en dessous de 1, ni monter au dessus de 16 (Pour les valeurs)
Donc, on teste la valeur:

PHP:
if($categories > 16 OR $categories < 1) {

        die('Erreur: la valeur categories est n\'est pas correcte !');

    }
Sachez que le die(); équivaut à un exit();
Vous pouvez maintenant insérer en toute sécuritée. Il est préférable d'utiliser PDO. Avec les BindParam ;)

Enjoy.
Les filtres en PHP:
PS: N'hésitez pas à poster d'autre astuces / découvertes


-->J'ai créer une fonction qui permet d'appliquer différents filtres facilement.

(Code de réduction -10%: RGFR)
 
Dernière édition:

Louki

Ancien staff
Inscription
12 Mars 2021
Messages
7 536
Réactions
4 583
Points
10 116
Merci de partager cette astuce :D !
 

___Romaiin

imagination.
Premium
Inscription
12 Janvier 2014
Messages
2 658
Réactions
979
Points
12 718
Testé avec SQLMap. 0 failles.
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut