Page 1 sur 2
Barre de progression
Posté : 02 août 2006, 23:26
par Ceubex
Bonjour,
Mon problème est simple j'aimerais lorsqu'un fichier est uploader sur mon site que le visiteur voye la progression de l'upload style 56%.
Merci d'avance
Posté : 02 août 2006, 23:47
par Cyrano
Ha... et alors ? Où se situe ton problème ? (Si problème il y a...) Peut-être pensais-tu que quelqu'un allait te donner un code tout prêt à l'emploi ?
Ce n'est pas un forum de script mais un forum où tu trouveras de l'aide pour la mise au point de tes propres scripts. As-tu commencé à coder quelque chose ou à tout le moins commencé à le modéliser un peu ?
Posté : 03 août 2006, 12:12
par Henri
Faut également réfléchir un peu : le PHP tourne sur le serveur et est déclenché à chaque affichage d'une page.
Comment est-il donc possible, dans ce cas, que PHP
1) connaisse la taille du fichier qui se trouve sur le poste client
2) change de page pendant un upload
Posté : 03 août 2006, 12:19
par zeus
Henri, même si ta remarque est très juste, la manière est assez ... brutale.

Tout le monde n'a pas forcément à l'esprit la notion de client/serveur et nous sommes là pour la leur expliquer. Pas la peine d'être violent

Posté : 03 août 2006, 13:41
par Vorkosigan
Mais disons neanmoins que c'est realisable vu que c'est implémenté dans certains CMS.
Le secret c'est de faire de l'AJAX en plus du PHP

Posté : 03 août 2006, 14:06
par naholyr
Non, le secret c'est d'utiliser un langage de script donnant accès au rawdata de l'upload. Sans ça tu n'as aucun contrôle de l'avancement du téléchargement.
PHP doit être patché pour le permettre, ou on doit utiliser un autre langage le permettant (Perl, Java, Ruby).
Et à côté bien sûr un peu de Javascript (Ajax ou iframe convient bien).
Posté : 03 août 2006, 14:08
par Henri
@Zeus,
Si moi, je suis violent, alors que dire de Cyrano (modérateur semble t'il) qui a carrément allumé Ceubex en le renvoyant dans les cordes sans un mot d'explication ?
Posté : 03 août 2006, 14:11
par naholyr
Si moi, je suis violent, alors que dire de Cyrano (modérateur semble t'il) qui a carrément allumé Ceubex en le renvoyant dans les cordes sans un mot d'explication ?
En l'occurrence ta violence n'était pas justifiée puisque tu avais tort sur le point principal : ce n'est pas le fait que PHP soit un langage côté serveur qui est bloquant dans cette histoire, c'est le fait que PHP soit... PHP

(les autres langages web ont tous la possibilité de connaître l'avancement d'un upload).
Ainsi en faisant l'envoi du script avec une bidouille Javascript (assez rocambolesque, mais éprouvée et qu'on doit pouvoir trouver à peu près partout en cherchant un peu) le fichier est envoyé en Ajax, et on interroge ensuite régulièrement le script pour savoir où il en est de l'upload. Rien de bloquant pour tout langage sauf PHP (cela dit il me semble que ni ASP ni Python ne savent le faire non plus).
Posté : 03 août 2006, 14:11
par zeus
@Zeus,
Si moi, je suis violent, alors que dire de Cyrano (modérateur semble t'il) qui a carrément allumé Ceubex en le renvoyant dans les cordes sans un mot d'explication ?
1/ c'est à toi que je parle, pas à
Cyrano
2/
Cyrano étant modérateur, c'est en privé que nous parlons de nos différentes manières de modérer
3/
Cyrano étant modérateur, il a le droit, voire le devoir, de recentrer les membres (ce que je fait avec toi en ce moment) et ce n'est en aucun cas à toi
Posté : 03 août 2006, 14:13
par naholyr
Ah et puis j'en rajoute une couche (et je préviens tout de suite que tout débat hors-sujet sur la démocratie et la dictature sera censuré) : le modo, il a toujours raison face au membre, et l'admin a toujours raison face au modo. Si vous n'êtes pas content vous contactez un admin, et si l'admin donne raison au modo, vous avez définitivement tort, c'est non négociable.
Donc l'excuse du "le modo l'a fait donc je peux le faire", n'a pas lieu d'être. Ce n'est pas parce qu'une pervenche m'a mis un PV que j'ai le droit de mettre un PV à n'importe qui

Posté : 03 août 2006, 18:00
par Ceubex
Merci beaucoup pour votre aide au revoir
Posté : 03 août 2006, 18:01
par zeus
Au milieu de ces mises au point, tu as réussi à avoir ta réponse ?
Posté : 03 août 2006, 21:31
par Ceubex
non pas du tout
Posté : 03 août 2006, 21:44
par Cyrano
non pas du tout
Après ma première intervention, tu n'as toi-même pas répondu à mes questions. Ça aurait pu aider à éventuellement t'aiguiller.
Posté : 03 août 2006, 22:26
par Ceubex
J'ai trouvé un code (PHP soit dit en passant) qui gère cela