Maison  >  Questions et réponses  >  le corps du texte

Comment importer plusieurs fichiers Excel dans Laravel à l’aide de Laravel Excel ?

J'essaie d'importer plusieurs fichiers dans Laravel à l'aide de Laravel Excel.

J'ai le code suivant dans mon fichier blade qui me permet de sélectionner plusieurs fichiers à télécharger :

<form action="{{ route('file-import') }}" method="POST" enctype="multipart/form-data">
    @csrf
    <div class="form-group mb-4" style="max-width: 500px; margin: 0 auto;">
        <div class="custom-file text-left">
            <input type="file" name="file" class="custom-file-input" id="customFile" multiple>
            <label class="custom-file-label" for="customFile">Choose file</label>
        </div>
    </div>
    <button class="btn btn-primary">Import data</button>
</form>

Dans le contrôleur j'utilise le code suivant :

public function fileImport(Request $request) 
    {   
        
        Excel::import(new LogsImport, $request->file('file')->store('temp'));
        return back();
    }

Cela fonctionne bien mais il n'importe que le premier fichier que je sélectionne. Je crois que j'ai besoin d'une sorte de déclaration foreach. J'ai essayé les options suivantes :

public function fileImport(Request $request) 
    {   
        foreach($request->file('file') as $f){
            Excel::import(new LogsImport, $f->store('temp'));
        }
        return back();
    }

Mais en utilisant cela, aucun fichier n'est importé.

J'ai également essayé d'imprimer $request mais j'ai obtenu un énorme tableau et je n'ai rien trouvé de pertinent pointant vers le fichier que j'ai téléchargé.

Toute aide serait grandement appréciée. Merci

P粉536909186P粉536909186318 Il y a quelques jours496

répondre à tous(1)je répondrai

  • P粉696605833

    P粉6966058332023-12-31 07:17:06

    Essayez d'utiliser le tableau name="file[]" au lieu de name="file"

    répondre
    0
  • Annulerrépondre