Vérification php taille fichier pour upload
Résolu
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
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