19
fév
2008
5

Upload de fichier avec barre de progression en PHP

Il y a une petite nouveauté dans PHP 5.2 qui est passée un peu inaperçu, c’est la possibilité de suivre l’avancement de l’upload d’un fichier.

Je me suis un peu amusé à tester ça en local et ça marche :) Bon, le problème c’est qu’il faut l’extension APC pour pouvoir lire dans le cache PHP. Je vous aurai bien mis une petite démo en ligne mais mon hébergeur n’a pas installé l’extension et je ne peux pas la charger dynamiquement avec la fonction dl.

Du coup, je me demande si ça vaut vraiment la peine d’implémenter ça dans l’E2T… Combien d’hébergeurs propose APC ? Je doute qu’il y en ait beaucoup malheureusement. C’est dommage car le système est assez simple à mettre en place, quelques lignes de code (PHP et Javascript) suffisent.

Je pensais aussi l’utiliser dans FabCMS mais je vais finalement me diriger vers quelque chose en flash…

Vous avez apprécié ce billet ?
Abonnez-vous au flux RSS pour être informé des nouveaux billets.
5 commentaires :
  1. Erwin 7 mar, 2008

    Flash c’est bien mais c’est aussi assez lourd dans la mesure où le navigateur a besoin du plugin en question et doit le charger…
    Une autre solution, mais je ne sais pas ce qu’elle vaut, c’est le paquet PECL uploadprogress :
    http://pecl.php.net/package/uploadprogress

  2. Fabien 8 mar, 2008

    J’ai trouvé un truc sympa en flash et pas très lourd apparemment : http://digitarald.de/project/fancyupload/

  3. Erwin 9 mar, 2008

    Oui mais : ça nécéssite toujours Flash, donc le plugin, ce qui est plus lourd pour le client (le navigateur) qui doit disposer du plugin en question et donc le charger.

    Je serai plus pour plusieurs options, permettant soit de tirer partie d’APC ou d’uploadprogress si disponibles, ou bien du Flash, voire d’utiliser aucune de ces méthodes, au choix de l’utilisateur en fonction de son environnement et/ou de son choix.

  4. Olivier 6 avr, 2008

    J’ai expérimenté le plugin APC pour la barre de progression en PHP. Un petit article sur la procédure de mise en place est dispo sur mon site :
    http://www.miasmatech.net/scripts/article/article_content.php?article_id=8

    Rapidement, la conclusion est plutôt mauvaise et je déconseille vivement son implémentation dans des projets communautaires.

    Pour donner mon opinion, je pense que seul flash reste la véritable solution pour combler cette lacune de PHP.

    99% des navigateurs disposent du plugin, la probabilité de tomber sur un navigateur sans flash doit être du même ordre que ceux ayant désactivé JS.

    En plus, il est assez simple de détecter si flash est installé et de proposer une méthode alternative sans barre de progression pour ceux qui ne disposent pas du plugin flash, ce qui permet d’avoir une application toujours fonctionnelle.

    Enfin, flash ne demande pas beaucoup de ressource machine pour de si petits composants.

  5. Fabien 7 avr, 2008

    Je pense également que pour le moment la seule vraie solution c’est flash. APC est trop peu installé.

    En utilisant, flash, on peut ainsi profiter de filtrer les fichiers que l’on peut choisir et même choisir plusieurs fichies d’un coup. En un mot : génial :)

Ajouter un commentaire
:D :) :o :eek: :( :lol: :wink: :arrow: :idea: :?: :!: :evil: :p