Comment comparer des valeurs numériques ?

Eléphanteau du PHP | 20 Messages

14 juin 2008, 11:00

Bonjour,
lors du chargement d'un fichier je fais un clasique
 if ($_FILES['avers']['size']>$_POST['MAX_FILE_SIZE']) 
Pour tester la taile du fichier chargé, or il semble comparer les valeurs en ASCII et non en numérique, ce qui fait que mon test ne passe pas ou alors ne veut rien dire ...
Comment teser ces valeurs numériquement ?
PS : le var_dump me donne :
$_POST['MAX_FILE_SIZE'] => string(7) "1000000" , et
$_FILES['avers']["size"]=> int(160229)

Peut-etre suffit-il de déclarer mon champ 'MAX_FILE_SIZE' en numérique dans le formulaire de saisie, mais comment ?

Merci !
Je changerais bien de boite : marre d'Atos-Origin !

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

14 juin 2008, 11:16

Comme ça:
//
$max_size = (int)$_POST['MAX_FILE_SIZE'];
$file_size = $_FILES['avers']['size'];
//
if ( $file_size > $max_size ) {
   ...
}
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Eléphanteau du PHP | 20 Messages

14 juin 2008, 11:23

Génial !
Merci ... désolé c'est effectivement tout simple !
Je changerais bien de boite : marre d'Atos-Origin !