From 7a26d3a49c82edbe3f13ec9216dd503f5485eb61 Mon Sep 17 00:00:00 2001 From: xdrm-brackets Date: Tue, 10 Nov 2015 22:49:27 +0100 Subject: [PATCH] Feedback - aurelien@checkParam(); --- manager/security.php | 63 +++++++++++++++++++++++++++++++++----------- 1 file changed, 48 insertions(+), 15 deletions(-) diff --git a/manager/security.php b/manager/security.php index e01923d..3eea68b 100755 --- a/manager/security.php +++ b/manager/security.php @@ -112,29 +112,62 @@ /** Vérifie le bon format, le bon type, ainsi que la bonne valeur des variables envoyées * - * @param $tabVar tableau contenant l'ensemble des variables a vérifiées - * @param $tabForm tableau contenant l'ensemble des formats attendus + * @param $tabVar tableau contenant l'ensemble des variables a vérifier + * @param $tabType tableau contenant l'ensemble des types + * @param $tabForm tableau contenant l'ensemble des conditions attendues * - * @return 'success' si variables bonnes / 'error' sinon + * @return toutOK VRAI si variables bonnes / FAUX sinon + * */ + function checkParam($tabVar, $tabType, $tabForm) { + // FORMAT DE $tabVar + // + // $tabVar = array( + // $stringVar, // chaine de caractères + // $integerVar, // entier + // $numericVar, // nombre (sous forme d'entier ou de chaine) + // $arrayVar // tableau + // ); - function checkParam($tabVar,$tabForm) { + // FORMAT DE $tabType + // + // $tabType = array( + // 'string', // chaine de caractères + // 'int', // entier + // 'numeric', // nombre (sous forme d'entier ou de chaine) + // 'array' // tableau + // ); + + + // FORMAT DE $tabForm + // + // $tabType = array( + // '/^[a-z0-9]{1,5}$/i', // chaine de caractères + // '/^[0-9]+$/', // entier + // '/^[0-9]+$/', // nombre (sous forme d'entier ou de chaine) + // '??????' // tableau + // ); - var $checker; - if(isset(tabVar) && isset(tabForm)) { - foreach ($tabVar as $type => $value) { - foreach ($value as $variable) { - // $checker = - - } - } + /* [1] Vérification de l'intégrité des tableaux + =============================================================================*/ + $areArrays = is_array($tabVar) && is_array($tabForm); // si ce sont bien des tabeaux + $areNEmpty = $areArrays && count($tabVar) > 0 && count($tabVar) > 0; // si ils ne sont pas vides + $haveEqLen = $areNEmpty && count($tabVar) == count($tabForm); // si ils ont la même taille + if( !$haveEqLen ) // si toutes les conditions ne sont pas vérifiées + return false; // on retourne faux, car ne pourra pas être vrai + + + /* [2] Pour chaque variable on vérifie les données + =============================================================================*/ + $checker = true; // on définit le checker à VRAI + + // pour chaque variable + foreach ($tabVar as $type => $value){ + } - else { - return 'missing parameters'; - } } ?> \ No newline at end of file