Merge aure

This commit is contained in:
xdrm-brackets 2015-11-11 18:25:22 +01:00
commit e5c8d7900d
2 changed files with 46 additions and 19 deletions

View File

@ -157,7 +157,7 @@
/* [1] Vérification de l'intégrité des tableaux /* [1] Vérification de l'intégrité des tableaux
=============================================================================*/ =============================================================================*/
$areArrays = is_array($tabVar) && is_array($tabForm); // si ce sont bien des tabeaux $areArrays = is_array($tabVar) && is_array($tabForm); // si ce sont bien des tabeaux
$areNEmpty = $areArrays && count($tabVar) > 0 && count($tabForm) > 0; // si ils ne sont pas vides $areNEmpty = $areArrays && count($tabVar) > 0; // si ils ne sont pas vides
$haveEqLen = $areNEmpty && count($tabVar) == count($tabForm); // si ils ont la même taille $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 if( !$haveEqLen ) // si toutes les conditions ne sont pas vérifiées
@ -166,27 +166,27 @@
/* [2] Pour chaque variable on vérifie les données /* [2] Pour chaque variable on vérifie les données
=============================================================================*/ =============================================================================*/
$checker = true; // on définit le checker à VRAI $checker = false; // on définit le checker à VRAI
// Vérification des types // Vérification des types
// pour chaque variable // pour chaque variable
foreach ($tabVar as $type => $tabVal){ for($i = 0 ; $i < count($tabVar) ; $i++) {
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));
}
} switch($tabType[$i]) {
// Vérification des formats case 'string': if( is_string($tabForm[$i]) )
$checker = is_string($tabVar[$i]) && preg_match($tabForm[$i], (String) $tabVar[$i]);
foreach($tabForm as $format => $tabVal) { break;
foreach ($tabVal as $variable) { // <--- Gestion des tableaux de valeurs ??? case 'int': if( is_string($tabForm[$i]) )
$checker = preg_match($format,$variable); $checker = is_int($tabVar[$i]) && preg_match($tabForm[$i], (String) $tabVar[$i]);
if($checker == false) break;
return (" variable : ".$variable." non conforme, format attendu : ".(String)$format." format reçu :".(String)$variable); case 'numeric': if( is_string($tabForm[$i]) )
$checker = is_numeric($tabVar[$i]) && preg_match($tabForm[$i], (String) $tabVar[$i]);
break;
case 'array': if( is_numeric($tabForm[$i]) )
$checker = is_array($tabVar[i]) && count($tabVar[$i]) > 0;
break;
} }
} }

View File

@ -44,7 +44,6 @@ require_once __ROOT__.'/manager/security.php';
require_once __ROOT__.'/manager/database.php'; require_once __ROOT__.'/manager/database.php';
debug(); debug();
@ -53,6 +52,34 @@ var_dump( $_SESSION['semestre_pair'] );
// test string
echo 'Test sur le type String';
var_dump( true == checkParam(array('mrd1609a'), array('string'),array('/^[\w -]{3,50}$/i')) ); // bonnes valeurs
var_dump( false == checkParam(array(18), array('string'),array('/^[\w -]{3,50}$/i')) ); // mauvaise variable
var_dump( false == checkParam(array('mrd1609a'), array('int'),array('/^[\w -]{3,50}$/i')) ); // mauvais type
echo '<br>';
// test int
echo 'Test sur le type int';
var_dump( true == checkParam(array(18), array('int'),array('/^[0-9]*$/')) ); // bonnes valeurs
var_dump( false == checkParam(array(18), array('string'),array('/^[0-9]*$/i')) ); // mauvaise variable
var_dump( false == checkParam(array('18'), array('int'),array('/^[\w -]{3,50}$/i')) ); // mauvais type
echo '<br>';
// test numeric
echo 'Test sur le type numeric';
var_dump( false == checkParam(array('18'), array('numeric'),array('/^[\w -]{3,50}$/i')) ); // bonnes valeurs
var_dump( false == checkParam(array('18'), array('string'),array('/^[\w -]{3,50}$/i')) ); // mauvaise variable
var_dump( false == checkParam(array('18'), array('int'),array('/^[\w -]{3,50}$/i')) ); // mauvais type
echo '<br>';
// test array
echo 'Test sur le type array';
var_dump( true == checkParam(array('mrd1609a','lbh1609'), array('string','string'),array('/^[\w -]{3,50}$/i','/^[\w -]{3,50}$/i')) ); // bonnes valeurs
var_dump( false == checkParam(array('mrd1609a','lbh1609'), array('int','int'),array('/^[\w -]{3,50}$/i')) ); // mauvaise variable
var_dump( false == checkParam(array('mrd1609a','lbh1609'), array('string','int'),array('/^[x]{3,50}$/i','/^[x]{3,50}$/i')) ); // mauvais regex
echo '<br>';