8721 sujets

Développement web côté serveur, CMS

Salut à vous,

Je possède un formulaire qui autorise l'upload de fichier.
Ma directive PHP "upload_max_filesize" autorise "8M".
Du coup, si quelqu'un essaye d'uploader un fichier de plus de 8Mb, je refuse le fichier en affichant un message à l'utilisateur (--> ça se fait en javascript).

Par contre, si la personne upload 5 fichiers de 2Mb : tous les fichiers sont acceptés mais j'ai un message d'erreur PHP qui me dit la taille maximale de l'upload est supérieure à 8Mb...
<b>Warning</b>
: POST Content-Length of 10824683 bytes exceeds the limit of 8388608 bytes in
<b>Unknown</b>
on line
<b>0</b>

Comment faites-vous pour gérer ce genre de comportement?

Merci d'avance!
Modifié par Alphonse (01 Jul 2014 - 12:14)
Bonjour,

Tu peux checker le poids de chaque fichier séparément lors de la soumission du formulaire, avec le paramètre size de la superglobale $_FILES qui renvoie la taille du fichier en octets ($_FILES['fichier']['size']) et ainsi refuser les fichiers qui dépassent un certain poids,

de même tu peux faire une addition du poids de chaque fichier et si cela dépasse 8Mo, refuser les uploads (ou n'accepter que ceux que tu veux selon ta préférence).
Modifié par ohweb (01 Jul 2014 - 16:55)