Voici quelques titres d'articles sous forme de questions basés sur votre article : * **Téléchargement de plusieurs fichiers en PHP : pourquoi `move_uploaded_file` échoue-t-il et comment y remédier ?** * **Téléchargement de fichiers multiples avec

Patricia Arquette
Libérer: 2024-10-26 04:13:02
original
497 Les gens l'ont consulté

Here are a few article titles in a question format based on your article:

* **Uploading Multiple Files in PHP: Why Does `move_uploaded_file` Fail, and How to Fix It?** 
* **Multiple File Upload with jQuery and PHP:  How to Correctly Loop and Move Uploade

Luttes liées au téléchargement de plusieurs fichiers : une solution PHP et jQuery

Dans vos efforts avec PHP, vous avez rencontré un obstacle lorsque vous tentez de télécharger plusieurs fichiers. Explorons comment vous pouvez surmonter ce défi en examinant l'extrait de code fourni et en résolvant le problème.

Le code

Le fichier HTML comporte un formulaire avec un champ de saisie de fichier qui permet plusieurs sélections. (multiple=multiple). Un bouton déclenche la fonction sendfile() lors d'un clic, initiant le processus de téléchargement. La fonction sendfile() crée un objet FormData et parcourt les fichiers sélectionnés, en les ajoutant à la charge utile de données. La fonction ajax() de jQuery est ensuite utilisée pour envoyer les données à uploadfile.php pour traitement.

Le fichier PHP (uploadfile.php) définit un répertoire cible et tente de déplacer les fichiers téléchargés un par un.

L'obstacle : téléchargement d'un seul fichier

Le code fourni tente par erreur de déplacer chaque fichier téléchargé un par un, ce qui fonctionne pour un seul fichier mais pas pour plusieurs sélections. Le nœud du problème réside dans la construction de la boucle for.

La solution : parcourir les fichiers téléchargés en boucle

La solution appropriée consiste à utiliser une boucle foreach plus inclusive pour parcourir les fichiers téléchargés. Cette approche garantit que chaque fichier est traité et déplacé vers le répertoire cible.

Pour y parvenir, les ajustements suivants à uploadfile.php sont requis :

<code class="php">foreach ($_FILES['myfile']['name'] as $i => $name) {
    if (move_uploaded_file($_FILES['myfile']['tmp_name'][$i], $target . $name)) {
        echo 'Successfully copied';
    } else {
        echo 'Sorry, could not copy';
    }
}</code>
Copier après la connexion

Cette version raffinée gère correctement plusieurs fichiers en parcourant le nom et le chemin temporaire de chaque fichier, ce qui permet de les déplacer individuellement. La boucle garantit que chaque fichier sélectionné est pris en compte et déplacé vers le répertoire cible spécifié.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!