SwfUpload:Etudes
Un article de Wiki.
[modifier] Introduction
En cherchant un outil pour améliorer l'upload de fichiers, j'ai trouvé SwfUpload. Il a l'air simple à utiliser. On va voir si il est facile de l'intégrer.
En testant juste le code fourni dans l'exemple:
le fichier upload.php ne fait rien. Il faut décommenter les commandes. Dans le fichier index.php, j'ai été induit en erreur par le ../../upload.php. Je me suis dit que le chemin était relatif au fichier index.php, mais en fait, il est relatif au fichier jscripts/SWFUpload/mmSWFUpload.js. Il ne faut donc pas le modifier.
Par contre, il vaut mieux ajouter *.* dans les fichiers autorisés, c'est plus facile pour les tests, mais ça peut être un gros trou de sécurité. Et aussi ajouter quelques zéros à la taille limite des fichiers.
Au premier essai, il n'y eu aucune création de fichier côté serveur... J'avais oublié de donner les droits 775 au répertoire. Le code exemple essaie de créer un dossier ./files, soit on donne le droit au dossier parent de créer ce répertoire, soit on le crée avec les droits 775 pour créer les fichiers uploadés.
Après cela, ça marche !
J'essaie un upload multiple avec des images à plus de 20Mo, soit en tout un peu moins de 80Mo à charger en une seule fois. Et ça marche ! Tout est bien chargé même si ça prend évidemment du temps.
Comme question: dans la doc, l'auteur parle d'un hack pour mettre le timeout à 15s. Mais pour mon test, le temps de chargement a largement dépassé 15s. A quoi il se réfère alors ?
[modifier] Bugs observés
- Les noms de fichiers trop long vont se superposer avec les noms de fichier suivant.
- Les fichiers sélectionnés doivent faire partie d'un seul dossier. En essayant de choisir des fichiers sur plusieurs dossiers, j'ai eu un espoir quand j'ai vu que les noms étaient conservés mais, dès la nouvelle sélection, l'ancienne sélection est effacée.

