SWFUpload téléchargement par lot

Téléchargement par lot de fichiers sans FTP

Objectif

Il s’agit de permettre aux administrateurs et administrateurs restreints de télécharger un nombre important de fichiers sans accès FTP. Les documents sont téléchargés dans le dossier ../tmp/upload de l’administrateur ou de l’administrateur restreint.

Ces fichiers pourront alors être ajoutés dans les articles ou autres comme logo ou documents joints.

L’interface d’utilisation reste très spartiate, et n’est pas directement utilisable depuis un article.

Depuis la version 0.6, le plugin permet le téléchargement de multiples fichiers directement dans un article. Les fichiers téléchargés apparaissent après avoir actualisé la page. Ils sont de plus accessibles dans le dossier upload.

Description

Le plugin semble fonctionner mais il n’y a aucune garantie quant à ces défauts et vices cachés... et il restera étiquetté “en développement”...

Il utilise l’application javascript/flash développée swfupload.org ici sous licence Open source MIT License.

Un bouton supplémentaire apparaît sous l’onglet “édition”.
On peut alors choisir un ensemble de fichiers à télécharger.
Les fichiers sont placés dans le dossier ../tmp/upload des administrateurs (donc dans un sous dossier pour un administrateur restreint)

Une fonctionnalité permet également du supprimer les fichiers téléchargés.
Un administrateur restreint ne supprimera que ses fichiers, alors qu’un administrateur (non restreint) supprimera tout.

Il faut tester le plugin lorsque l’écriture des fichiers ne se fait que dans le répertoire ../tmp/upload et non dans les sous-répertoires des administrateurs restreints.

Installation et configuration

S’installe comme tous les plugins. Il suffit de télécharger l’archive sur la zone http://files.spip.org/spip-zone/swfupload.zip, de la décompresser et d’installer le répertoire obtenu dans le répertoire /plugins de SPIP et de l’activer via l’administration des plugins.
(Consulter la documentation officielle pour plus de détails.)

Le plugin ne nécessite pas CFG, mais si celui-ci est installé vous pourrez modifier certaines options de fonctionnement :
-  choix du ou des types de fichiers téléchargeables
-  choix de la taille maximale d’un fichier (limitée par ailleurs par la configuration de l’hébergement du site)
-  choix du nombre de fichiers téléchargeables en une fois

Dans le cas contraire, les réglages par défaut seront appliqués.
La configuration par défaut comporte les paramètres suivants :
-  type de fichiers; jpg, gif, png
-  taille maximale d’un ficher : 2M
-  nombre illimité de fichiers téléchargeables

Problèmes possibles (en autres...) :
-  si vous rencontrez une erreur 406, elle est le plus souvent due à la configuration du serveur apache et au module mod_security. Vous pouvez recopier le contenu du fichier htaccess.txt dans votre fichier .htaccess.
-  la taille maximale et le nombre de fichiers téléchargeables en une seule fois dépend aussi la configuration du serveur et de votre ’post_max_size’ and ’upload_max_filesize’ dans votre php.ini, configurable aussi via .htaccess me semble-t-il.

À faire


-  Faire fonctionner le plugin avec d’autres navigateurs que IE
-  Afficher les vignettes des images téléchargées
-  Rendre le plugin utilisable directement depuis les boites d’ajout d’images et de documents.

Il existe d’autres applications similaires... peut-être plus agréable... à “pluginniser” ; notamment fancyupload (open source ajax/flash), jupload.sourceforge.net (java open source) ou jupload.biz (java non libre)

Discussion

44 discussions

  • Bonjour à tous,

    Merci pour ce plugin !!
    Est-il possible d’utiliser ce plugin dans la partie public ?

    merci

    Reply to this message

  • Bonjour,
    J’ai installé la dernière version de Spip 2.1.5 avec bandeau, et le plugin bandeau ne récupère pas l’icone de swf que j’utilise avec bonheur depuis qu’il est sorti.
    Il y aurait un code à placer dans le plugin...
    Est ce que ce sera fait?
    Bonne journée.

    Reply to this message

  • Bonjour,
    J’ai essayé d’installer la version de l’article et la version de Jean. Dans les deux cas un Fatal error lors de la validation de la configuration. J’ai modifié les fichiers comme suggérer par hdeb, plus de Fatal error, mais lorsqu’un article est créé, le formulaire swf ne me permet pas de télécharger un document. Le triangle déplie la zone mais à l’intérieur de celle-ci, pas moyen de parcourir un dossier ou quelque chose pour sélectionner et télécharger. Une idée du problème ?
    Spip 2.1.5 et j’aimerais pourvoir le faire avec la version de Jean (intéressante la possibilité de gérer la taille des images).
    Merci pour votre aide.

    Reply to this message

  • Juste pour info, il faut le dossier “sessions” à la racine du site

    Reply to this message

  • Bonjour

    Ce plugin est très pratique. Cependant il ne permet pas de classer les photos par dossier dans upload. Y a-t-il un autre plugin similaire permettant de le faire ?

    Merci d’avance

    Reply to this message

  • configuration utilisée :
    SPIP 2.1.2 [16017]
    SWFUpload : Version : 0.6 [40265]
    Mozilla Firefox 3.6.10 for Ubuntu

    Les icônes n’apparaissent pas, ni via Édition, ni via un article, donc transferts impossibles ...

    Modif du 13 avril à 20:33, par Jean : cette modification m’avait permis de faire apparaitre les icônes sur une ancienne version de SPIP 2.0.* (je ne me souviens plus). Mais depuis j’ai aussi upgradé les versions de firefox, chrome que j’utilise (IE très peu souvent, ou pour vérifier des pbs de compatibilité).

    Quelque-soit le navigateur utilisé, les icônes n’apparaissent pas.

    le plugin utilise du Flash ; le fichier swfupload.html à la racine du plugin nous informe que :
    pour permettre pb session lie au player flash non IE
    http://zone.spip.org/trac/spip-zone/changeset/23217

    et sur cette page il y a l’explication :

    On Windows the Non-IE Flash Player plugin (FireFox?, Opera, Safari, etc) sends the IE cookies regardless of the browser used. This breaks authentication and sessions for many server-side scripting technologies.

    Developers should manually pass Session and Authentication cookie information and manually restore Sessions on the Server Side if they wish to use Sessions

    problème du cookie de Flash qui envoie une identification IE quelque-soit le navigateur utilisé, ce qui expliquerait la tentative du 31 juillet à 12:49, par Christian, mais comme chez moi ça ne fonctionne pas sur tous les navigateurs ! Quid ?

    En bref, je crois qu’il faudrait reprendre tout le plugin ... sans flash
    Avis aux amateurs :)

    Reply to this message

  • 1

    Bonjour, je reviens sur le forum en espérant que celui ci n’est pas un forum mort.
    Ne trouvant pas de solution à mon probleme déjà énoncé, j’ai fais une mise à jour à ma version de spip pour passer au 2.1. Je rencontre à présent ce problème:
    Sans titre-1.jpg
    Security Error

    Message d’erreur de sécurité. Que puis je faire? j’espere que le developpeur est encore là pour nous porter un coup de main. Merci

    • SAlut à tous,
      Je reviens pour relancer mon probleme de security error. Priere m’aider SVP

    Reply to this message

  • 2

    Bonjour et merci pour tout ce travail,

    mais quel malheur, le passage à SPIP 2.1.1 et tout s’arrête, un espoir ou c’est fini???

    Courage nous sommes là pour vous soutenir!!!

    • Après configuration dans CFG de “Active la fonction debug : True”, il m’affiche:

      Fatal error: Cannot unset string offsets in /homez.333/xxxxxx/www/vibrac16/ecrire/public/composer.php on line 662

      Si cela peut aider?

    • Pour info.:

      Retour sous Spip 2.1.0

      par ftp j’ai téléchargé les éléments de Spip 2.0.1 et mise à jour la base de données, le bouton réapparait sans problème et je peux télécharger par lots.

      Que fait donc ce Spip 2.1.1???

    Reply to this message

  • 4
    Christian Mercat

    Bonjour,

    Très bonne idée ce plugin. Malheureusement je n’arrive pas à le faire fonctionner, j’ai bien l’interface mais quand je choisis un fichier sur mon ordinateur, il me met en rouge “MonFichier.jpg Upload Error: 404” dans la File d’attente. Je suis en admin et il y a un dossier tmp/upload accessible en écriture à tous...
    Je suis en SPIP 1.9.3 dev SVN [11546].

    Une autre question, j’ai sur le même serveur un autre site sous SPIP 2.1.0 dev [14678] l’interface n’a qu’un bouton grisé “Annuler le téléchargement” au lieu du plus cordial “Upload” de flash, bref, le flash n’est même pas chargé dans le html, une idée?

    Merci pour ce chouette plugin, cordialement, Ch.M.

    • Christian Mercat

      Bonjour, je n’ai pas avancé sur mon problème (Upload Error: 404 avec un spip 1.9.3) si ce n’est qu’avec ma 2.1.0 qui ne charge pas le flash dans la console admin ?exec=swfupload_admin, le bouton apparaît bien dans SWFUpload directement dans l’édition d’un article, et fait bien une barre de progression quand on uploade quelque chose, mais finit toujours, malgré les incantations idoines dans le .htaccess, avec un Security Error des plus orwelliens.

      Voici ce que j’ai cru bon de rajouter dans le .htacess à la racine (j’ai essayé aussi de le mettre dans ecrire/.htaccess mais avec un échec semblable, ce qui est normal, spip.php est à la racine):

      <IfModule>
      SecFilterEngine Off
      SecFilterScanPOST Off

      Merci d’éclairer ma lanterne si possible, cordialement, Ch.M.

    • Bonjour Christian,

      Avez-vous résolu votre problème ? Si oui comment ?
      J’ai installé SWFUpload sur une version 1.9.i et lorsque je veux uploader un fichier, j’ai l’erreur : Security error -> #2049

      Merci de votre aide

    • Christian

      Non, désolé, je n’ai pas avancé, ça ne fonctionne toujours pas... J’ai fait les petites modifs de sagc et Jean sans amélioration notable de l’état du patient (à part l’apparition du logo). En mettant le debug SWF, j’ai:

      SWF DEBUG: Event: fileDialogStart : Browsing files. Multi Select. Allowed file types: *.jpg;*.gif;*.png; *.*
      SWF DEBUG: Select Handler: Received the files selected from the dialog. Processing the file list...
      SWF DEBUG: Event: fileQueued : File ID: SWFUpload_0_0
      SWF DEBUG: Event: fileDialogComplete : Finished processing selected files. Files selected: 1. Files Queued: 1
      SWF DEBUG: StartUpload: First file in queue
      SWF DEBUG: Event: uploadStart : File ID: SWFUpload_0_0
      SWF DEBUG: Global Post Item: PHPSESSID=nq92tgfs9o53rrda1nbss8f280
      SWF DEBUG: Global Post Item: id_article=0
      SWF DEBUG: ReturnUploadStart(): File accepted by startUpload event and readied for upload. Starting upload to http://www.math.univ-montp2.fr/SPIP/spip.php?page=swfupload for File ID: SWFUpload_0_0
      SWF DEBUG: Event: uploadError : Security Error : File Number: SWFUpload_0_0. Error text: Error #2049
      SWF DEBUG: Event: uploadComplete : Upload cycle complete.
      Error Code: Security Error, File name: albert-einstein-1951.jpg, Message: Error #2049

    • Christian

      Aha, en mettant à la racine de mon site un fichier crossdomain.xml contenant

      <?xml version="1.0"?>
      <!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
      <cross-domain-policy>
      <allow-access-from domain="*.monsitespip.com" />
      </cross-domain-policy>

      j’ai maintenant une erreur 404 et non plus un problème de Securité.

      Error Code: HTTP Error, File name: albert-einstein-1951.jpg, Message: 404

      On progresse... Je n’ai pas le couteau suisse.

    Reply to this message

  • 1

    Je suis sous spip 2.1.0 et pour que l’upload fonctionne il a fallu que je modifi le fichier: swfupload_pipeline.php ligne 50
    upload_url: "'.$GLOBALS['meta']["adresse_site"].'/?page=swfupload",
    par
    upload_url: "'.$GLOBALS['meta']["adresse_site"].'/spip.php?page=swfupload",

    • Le plugin marche du moin s avec l’affichage du bouton upload. Mais après le telechargement, l’element ne se trouve pas dans le dossier tmp/upload mais je trouve un fichier .ok de taille 0K. En editant un article je ne trouve pas l’element téléchargé. Je suis sur Spip 2.1. Y a t il une autre solution?

    Reply to this message

Add a comment

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite / PostgreSQL
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparait.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Who are you?
[Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom