Upload de fichier... connaître la taille AVANT l'upload

Eléphant du PHP | 441 Messages

29 déc. 2006, 15:57

Bonjour à tous,

je me pose une question toute bête mais lorsqu'on upload un fichier dont la taille excède la directive post_max_size, apache génère une erreur... sans que mon script puisse la retourner correctement...
C'est normal me direz-vous mais comment connaître la taille du fichier côté client alors? vu que mon script ne reçoit pas le fichier au final à cause de la directive...
Merci d'avance !
Futures Stars par ici >> www.apel-doorn.com
fan d'info et du ... PSG !! :D
Apprendre, comprendre et maîtriser telle est ma devise!
Fan inconditionnel de netvibes

Mammouth du PHP | 1885 Messages

29 déc. 2006, 16:17

Il n'est pas possible de vérifier avant l'upload à moins d'utiliser Flash ou Java.

Lors d'un upload, une requête POST sera envoyée au serveur avec le contenu du fichier et aucune réponse ne sera envoyée avant la fin de l'envoi de la requête. Donc le fichier doit être uploadé en entier avant d'avoir une réponse.

La vérification doit donc se faire du côté client avant l'envoi, donc il faut Flash ou Java.
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

Eléphant du PHP | 441 Messages

29 déc. 2006, 16:35

Ok m'en doutais un peu...:?
Je peut peut-être utiliser de l'active X ...mais bon. :-k
Vais voir s'il y a une solution.
Futures Stars par ici >> www.apel-doorn.com
fan d'info et du ... PSG !! :D
Apprendre, comprendre et maîtriser telle est ma devise!
Fan inconditionnel de netvibes

ViPHP
ViPHP | 1961 Messages

29 déc. 2006, 16:39

Je peut peut-être utiliser de l'active X ...mais bon. :-k
Même pour ceux qui seront sous Linux ou Mac ???
Le monde ne s'arrête pas à Win....
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

Eléphant du PHP | 441 Messages

29 déc. 2006, 16:49

Je sais bien !:lol: (En même temps c'est pour une appli sous IE et FF seulement)

De toute manière même ce code ne fonctionne pas sous FF ;)

Code : Tout sélectionner

function taille_fichier(fichier) { var FSO = new ActiveXObject("Scripting.FileSystemObject"); var File = FSO.GetFile(fichier); alert(parseInt(File.Size)); }
Et pis de toute manière c'est "trop" dangereux...
Futures Stars par ici >> www.apel-doorn.com
fan d'info et du ... PSG !! :D
Apprendre, comprendre et maîtriser telle est ma devise!
Fan inconditionnel de netvibes

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

31 déc. 2006, 20:03

salut,

pour gérer cela via php il suffit de vérifier le contenu de $_FILES['nom']['erreur'] !

http://phpjungle.info/upload/
et la référence http://fr.php.net/manual/fr/features.fi ... errors.php

@+
Il en faut peu pour être heureux ......

Mammouth du PHP | 1885 Messages

31 déc. 2006, 23:05

Le fichier devra être uploadé avant d'avoir le message d'erreur.
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

ViPHP
fab
ViPHP | 2657 Messages

01 janv. 2007, 17:35

j'aimerais bien saoir ce qui est trop dangereux dans ton histoire j'ai pas trop compris...
Seul l'intelligent a le pouvoir de se trouver con
try { work(); } catch(FlemmeExeption $e) { sleep(84600); }