Upload un dossier avec php

Eléphanteau du PHP | 24 Messages

20 juin 2006, 17:06

Bonjour,

Je cherche comment u/ler plusieurs fichiers en même temps.

J'ai trouvé ce script qui marche très bien, mais il faut ajouter les fichier les uns après les autres.
http://the-stickman.com/web-development ... e-element/

Est-ce qu'il y a une autre méthode qui permette de sélectionner plusieurs fichiers en même temps et les u/ler ou u/ler directement un dossier en php?

Merci :wink:
Modifié en dernier par gto55 le 21 juin 2006, 14:02, modifié 3 fois.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

20 juin 2006, 17:12

Déjà, l'upload ce fait en HTTP en pas en PHP. PHP ne fait que manipuler des fichier uploader sur le serveur ;)

Sinon, tu ne peut spécifier plus d'un fichier par champs <input type="file" /> et il n'est pas possible de donner un dossier à ce champ.

Donc à part demander à tes utilisateur de créer une archive du dossier en question, il n'y a pas de solution :?
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphant du PHP | 114 Messages

20 juin 2006, 17:36

<form action="la page à envoyé.php" enctype="multipart/form-data"
	      method="post">
    Uploader les fichiers suivants :<br />
    Fichier 0 :
    <input name="fichier[]" type="file" />
    <br />
    Fichier 1 :
    <input name="fichier[]" type="file" />
    <br />
    Fichier 2 :
    <input name="fichier[]" type="file" />
    <br />
    <input name="envoyer" type="submit" value="Envoyer" />
  </form>
sa c est pour le formulaire
et ensuite voiçi pour la fonction
<?php
    //  D&eacute;placement des fichiers du r&eacute;pertoire temporaire
    //  vers le r&eacute;pertoire courant d'o&ugrave; est ex&eacute;cut&eacute; le script.
    for ($i=0; $i<count($_FILES["fichier"]["tmp_name"]); $i++)
    {
    move_uploaded_file($_FILES["fichier"]["tmp_name"][$i],
                           "./".$_FILES["fichier"]["name"][$i]);
    }

    //  Affichage de la liste des fichiers du r&eacute;pertoire
    $repertoire = openDir(".");
    while ($fichier = readDir($repertoire)) {
        echo $fichier."<br />";
    }
    closeDir($repertoire);
?>
j ai rajouter aussi pour listé le dossier là ou tu envoy tes fichiers à toi de personnalisé

Eléphanteau du PHP | 24 Messages

20 juin 2006, 17:36

Comment font les sites pour u/ler plusieurs photos dans leurs news?

Il les u/lent une à une?

Merci :wink:

Eléphant du PHP | 50 Messages

20 juin 2006, 17:39

Dans tous les cas, l'upload multi-fichiers n'est intéressant qu'avec des PETITS fichiers.

Dans le cas de gros fichiers plusieurs limites arrivent :
- La taille maximale d'envoi en POST,
- le temps d"execution de la page PHP (limitée je le rapelle, sauf si on le modifie),
- la connexion de l'utlisateur, imaginez un utilisateur uploadant 3 fichier de 1 Mo avec seulement un 512K (c'est à dire 16 Ko/s en upload) ! Et oui ça existe encore !!!!

Eléphant du PHP | 114 Messages

20 juin 2006, 17:40

soi plus précis dans ta demande car je ne saisi pas !

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

20 juin 2006, 17:40

est-ce si difficile à écrire "upload" ? :langue:

Sinon, pour ta question, oui ... :?
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Invité
Invité n'ayant pas de compte PHPfrance

20 juin 2006, 18:06

Ce serait pour uploader des photos de petites tailles dans une galerie.

Merci

Eléphanteau du PHP | 24 Messages

21 juin 2006, 13:12

Merci pour vos réponses, ça marche.

On m'a envoyé un dossier avec 150 photos et ils'avère que le script que j'ai trouvé s'avère fastidieux pour un upload d'un grand nombre de fichiers.

Est-il donc possible d'uploader directement le dossier?
Est-ce que qqn à un exemple d'upload d'un fichier zippé contenant un dossier qui se dézippe à la volée en php lors du transfert.

Merci :wink:

Eléphant du PHP | 50 Messages

21 juin 2006, 15:04

Je pense qu'en recherchant des scripts sur www.phpscripts-fr.net tu trouvera peut être ton bonheur.