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

PHP & Base de données Discussion :

Upload de plusieurs fichier


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2021
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2021
    Messages : 35
    Par défaut Upload de plusieurs fichier
    Bonjour tout le monde. J'aimerai upload plusieurs fichiers en un bouton (donc j'utilise l'attribut multiple).
    Mais je ne comprend pas du tout comment les mettre tous dans le même dossier avec leurs nom d'origine,
    J'imagine qu'il faudrait que j'utilise un tableau comme nom mais je ne sais pas comment récupérer le nom parce que pour moi si j'enregistre tout du tableau ça ne me donnera pas que ça.
    Bref
    voici un bout de code :
    pour le formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <form method="post" enctype="multipart/form-data">
        <input type="file" name="my_file[]" multiple>
        <input type="submit" value="Upload">
    </form>
    et là c'est très compliqué x)
    le code pour le traitement ;(

    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
    <?php
                    $dest_dossier = 'images/'; //nom du dossier ou vous allez stocké vos images
     
                if (isset($_FILES['my_file'])) {
                    $myFile = $_FILES['my_file'];
                    $fileCount = count($myFile["name"]);
                    $dest_dossier = 'images/'; //pour déplacer mais ça marche pas
     
     
                    for ($i = 0; $i < $fileCount; $i++) {
                        ?>
                            <p>File #<?= $i+1 ?>:</p>
                            <p>
                                Name: <?= $myFile["name"][$i] ?><br>
                                Temporary file: <?= $myFile["tmp_name"][$i] ?><br>
                                Type: <?= $myFile["type"][$i] ?><br>
                                Size: <?= $myFile["size"][$i] ?><br>
                                Error: <?= $myFile["error"][$i] ?><br>
                            </p>
                        <?php
                    }
                }
            ?>

  2. #2
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 322
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 322
    Billets dans le blog
    17
    Par défaut
    De base, $_FILES n'est pas très intuitif, alors si tu utilises un tableau c'est encore pire

    Dans ton script de destination, ajoute ceci en haut de page pour mieux comprendre ce que tu reçois et comment y accéder :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <pre><?php print_r($_FILES) ?></pre>

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2021
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2021
    Messages : 35
    Par défaut
    Citation Envoyé par Séb. Voir le message
    De base, $_FILES n'est pas très intuitif, alors si tu utilises un tableau c'est encore pire

    Dans ton script de destination, ajoute ceci en haut de page pour mieux comprendre ce que tu reçois et comment y accéder :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <pre><?php print_r($_FILES) ?></pre>
    Salut, merci pour ta réponse d'abord. Alors j'ai effectué la commande qui affiche donc le tableau et ce qu'il contient après envoie des photos.
    Je ne comprends pas comment faire pour changer le tmp-name, et je ne veux pas qu'il soit temporaire d'ailleurs, mais plutôt stocker dans le dossier que je veux, un petit coup de pouce ?
    Je dois utiliser move_uploaded_file mais je comprend pas comment l'utiliser

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2021
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2021
    Messages : 35
    Par défaut Problème résolu
    Citation Envoyé par Soden78 Voir le message
    Salut, merci pour ta réponse d'abord. Alors j'ai effectué la commande qui affiche donc le tableau et ce qu'il contient après envoie des photos.
    Je ne comprends pas comment faire pour changer le tmp-name, et je ne veux pas qu'il soit temporaire d'ailleurs, mais plutôt stocker dans le dossier que je veux, un petit coup de pouce ?
    Je dois utiliser move_uploaded_file mais je comprend pas comment l'utiliser
    My bad j'ai réussi a retrouver rapidement comment faire (seul), j'ai fais un for i ...
    pour parcourir le tableau et à chaque fois déplacer l'image.
    Il me reste mtn à controler les upload et savoir comment tous les renommés. Merci

  5. #5
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 322
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 322
    Billets dans le blog
    17
    Par défaut
    Il me reste mtn à controler les upload et savoir comment tous les renommés. Merci
    Pour cela tu peux utiliser move_uploaded_file() => Tu déplaces le fichier temporaire vers sa destination finale sous son nom final

    Tu as des exemples dans la doc => https://www.php.net/move-uploaded-file

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2021
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2021
    Messages : 35
    Par défaut Oui
    Citation Envoyé par Séb. Voir le message
    Pour cela tu peux utiliser move_uploaded_file() => Tu déplaces le fichier temporaire vers sa destination finale sous son nom final

    Tu as des exemples dans la doc => https://www.php.net/move-uploaded-file
    Oui merci j'ai vu j'ai fini même
    il me manque juste le contrôle en mode si l'image est trop grande ça l'envoie pas ou des trucs comme ça

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Upload] upload de plusieurs fichiers
    Par jc_cornic dans le forum Langage
    Réponses: 7
    Dernier message: 12/07/2010, 17h33
  2. [Upload] Upload de plusieurs fichiers via formulaire
    Par seb67110 dans le forum Langage
    Réponses: 2
    Dernier message: 02/05/2007, 11h55
  3. Réponses: 6
    Dernier message: 01/04/2007, 18h39
  4. Réponses: 10
    Dernier message: 12/06/2006, 16h45
  5. Réponses: 3
    Dernier message: 21/02/2006, 16h43

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