diff --git a/manager/security.php b/manager/security.php index 61bde5e..1951e45 100755 --- a/manager/security.php +++ b/manager/security.php @@ -155,7 +155,7 @@ /* [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 + $areNEmpty = $areArrays && count($tabVar) > 0 && count($tabForm) > 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 @@ -166,10 +166,29 @@ =============================================================================*/ $checker = true; // on définit le checker à VRAI + // Vérification des types + // pour chaque variable - foreach ($tabVar as $type => $value){ + foreach ($tabVar as $type => $tabVal){ + foreach($tabVal as $variable) { // <--- Gestion des tableaux de valeurs ??? + $checker = ($type == gettype($variable)); + if($checker == false) + return (" variable : ".(String)$variable." non conforme, type attendu : ".(String)$type." type reçu :".gettype($variable)); + } } + // Vérification des formats + + foreach($tabForm as $format => $tabVal) { + foreach ($tabVal as $variable) { // <--- Gestion des tableaux de valeurs ??? + $checker = preg_match($format,$variable); + if($checker == false) + return (" variable : ".$variable." non conforme, format attendu : ".(String)$format." format reçu :".(String)$variable); + } + } + + return $checker; + } ?> \ No newline at end of file