IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

solution pour upload multiple


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations forums :
    Inscription : Octobre 2012
    Messages : 2
    Points : 1
    Points
    1
    Par défaut solution pour upload multiple
    je suis sur un projets et je bloc depuis plusieurs jours sur ma solutions pour poster plusieurs images sur mon site web. je crois mon code source juste mais rien ne marge j'eesais meme de savoir si les photo on ete passé a la variable $_FILES aucun resultat. je vous donne mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    <?php
    echo $_FILES['photo']['name'][0];
    echo $_FILES['photo']['name'][1];
    echo $_FILES['photo']['name'][2];
    echo $_FILES['photo']['name'][3];
    if($_POST) {
    /* variables à modifier */
    $taillemax = 1048576; // taille max d'un fichier (multiple de 1024)
    $rep = "upload/"; // répertoire de destination
    $maxfichier = 4; // nombre maximal de fichiers
    /* fin des modifications */
    $msg = array();
    // $photos = $_FILES['photo']; simplication du tableau $_FILES
    for($i=0; $i < $maxfichier; $i++) {
    	$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png' );
    //1. strrchr renvoie l'extension avec le point (« . »).
    //2. substr(chaine,1) ignore le premier caractère de chaine.
    //3. strtolower met l'extension en minuscules.
    $extension_upload = strtolower(  substr(  strrchr($_FILES['photo']['name'][$i], '.')  ,1)  );
    if ( in_array($extension_upload,$extensions_valides) ) {
    	if ($taillemax < $_FILES['photo']['size'][$i] )  
    	echo "Le fichier est trop Lourd";
    	else {
    	//Créer un dossier 'fichiers/1/'
      mkdir($rep, 0777, true);
     
    //Créer un identifiant difficile à deviner
      $nom = md5(uniqid(rand(), true));
      $nom = "{$rep}/{$nom}.{$extension_upload}";
    $resultat = move_uploaded_file($_FILES['photo']['tmp_name'][$i],$nom);
    if ($resultat) echo "Transfert réussi";
    else echo "Echec transfert";
      }
    	}
    	else echo "Veuillez choisir une image";
    	}	
     
    	}
    ?>
    code html

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    <form action="upload.php" method="post" enctype="multipart/form-data">
        <table class="boduret" width="681" border="0" cellspacing="5">
    	     <tr><td><span class="post">Photo 1:</span></td>
    	    <td colspan="3"><p class="post">
            <input type="hidden" name="MAX_FILE_SIZE" value="1048576">
    	        <input type="file" name="photo[]" id="photo" />
    	                </p><span class="error"><? echo $msg[$i]; ?></span></td>
    	    </tr>
            <tr>
              <td><span class="post">Photo 2:</span></td>
    	    <td colspan="3"><p class="post">
            <input type="hidden" name="MAX_FILE_SIZE" value="1048576">
    	        <input type="file" name="photo[]" id="photo" />
    	                </p><span class="error"><? echo $msg[$i]; ?></span></td>
    	    </tr>
            <tr>
              <td><span class="post">Photo 3:</span></td>
    	    <td colspan="3"><p class="post">
            <input type="hidden" name="MAX_FILE_SIZE" value="1048576">
    	        <input type="file" name="photo[]" id="photo" />
    	                </p><span class="error"><? echo $msg[$i]; ?></span></td>
    	    </tr>
            <tr>
              <td><span class="post">Photo 4:</span></td>
    	    <td colspan="3"><p class="post">
            <input type="hidden" name="MAX_FILE_SIZE" value="1048576">
    	        <input type="file" name="photo[]" id="photo" />
    	                </p><span class="error"><? echo $msg[$i]; ?></span></td>
    	    </tr>
     
     
     
     
            <tr  >
    	    <td colspan="2" align="right"><input type="reset" name="submit" value="Réinitialiser"  /></td>
    	    <td width="362" colspan="2" align="center"><input type="submit" name="submit" value="Envoyer"  /></td>
    	    </tr>
    	  </table>
          </form>

  2. #2
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations forums :
    Inscription : Octobre 2012
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    pourais je avoir de l'aide? j'ai bo fait tous les controles mais il me semble que mon script ne marche toujours pas. merci de m'aider.

  3. #3
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 389
    Points : 10 422
    Points
    10 422
    Par défaut
    Salut,

    Bah les script d'upload c'est souvent pénible à débugguer... surtout que là il te manque encore pas mal de code pour gérer les erreurs.

    Je te conseille plutôt d'utiliser des classes d'upload qui (entre autre) savent gérer les erreurs :

    1/ La plus complète et facile à mettre en oeuvre.

    2/ Une autre solution plus puissante qui permet de surpasser les configurations serveur et des retours d'information en temps réel.

    Les deux solutions sont fournies dans un dossier de test prêt à l'emploi

Discussions similaires

  1. Meilleure solution pour Uploader un fichier
    Par naou18 dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 03/12/2011, 13h33
  2. [JavaScript] Création dynamique pour upload multiples
    Par SpaceFrog dans le forum Contribuez
    Réponses: 1
    Dernier message: 28/09/2009, 13h14
  3. Solution pour connexion multiple.
    Par Flow_75 dans le forum Réseau
    Réponses: 3
    Dernier message: 19/06/2009, 13h38
  4. [CKEditor] Quel fichier modifier pour de l'upload multiple ?
    Par nemesis2a dans le forum Bibliothèques & Frameworks
    Réponses: 1
    Dernier message: 17/07/2008, 18h05
  5. [Upload] meilleure solution pour envoi de fichiers
    Par gforce dans le forum Langage
    Réponses: 10
    Dernier message: 29/03/2007, 15h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo