Posez votre question Signaler

Vérification php taille fichier pour upload [Résolu]

t671 461Messages postés 25 février 2008Date d'inscription 21 mai 2012Dernière intervention - Dernière réponse le 4 sept. 2009 à 09:55
Bonjour,
Je suis entrain de travailler sur l'upload de fichier en php (en local), et j'ai un 'tit souci avec le test sur la taille du fichier à uploader qui ne fonctionne pas.
Dans mon html j'ai ceci (mais est-ce vraiment utile ????) :
<input type="hidden" name="MAX_FILE_SIZE" value="1000000" />
Dans mon php, j'ai ceci :
............................
$taille_maxi = 1000000;
$taille = filesize($_FILES['monfichier']['tmp_name']);
..................
if($taille>$taille_maxi)
{
$erreur = 'Le fichier est trop gros...';
}
if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
{
//On formate le nom du fichier ici...
$fichier = strtr($fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
if(move_uploaded_file($_FILES['monfichier']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
{
echo 'Upload effectué avec succès !';
}
else //Sinon (la fonction renvoie FALSE).
{
echo 'Echec de l\'upload !';
}
}
else
{
echo $erreur;
}
?>

Et si j'upload un fichier > 1Mo, j'ai le message "échec de l'upload", et non " Le fichier est tros gros".
Où se trouve mon erreur ?
Merci
Lire la suite 

Vérification php taille fichier pour upload »

1 réponses
Réponse
+1
moins plus
Sans doute parce qu'un MO ne vaut pas 1000000 octets, mais 1048576.

Et si ton fichier n'est pas uploadé, peut-être qu'en effet sa taille dépasse celle définie dans le php.ini, voir le upload_max_filesize.
Ajouter un commentaire
Ce document intitulé « vérification php taille fichier pour upload » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?