Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Upload file multipli con formData, variabile $_FILES, vuota

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    577

    Upload file multipli con formData, variabile $_FILES, vuota

    Ciao a tutti,

    ho sempre fatto l'upload di un singolo file senza problemi.
    Adesso ho la necessita di selezionare multipli file e mi ritrovo con la variabile $_FILES in php vuota.
    Il codice che utilizzo è:
    codice:
    $("#escrituras").on("change", upFile);
    function upFile() {
        if ($(this).val() == "") {
            return;
        }
        var spazio = 0;
        var idElemento = $(this).attr("id")
        var filemulti = $(this).get(0).files;
        for (indice in filemulti) {
            if (!isNaN(indice)) {
                spazio += Math.round((filemulti[indice].size / 1024 / 1024) * 100) / 100;
            }
        }
        if (spazio > 10) {
            alert("File troppo grande");
            return;
        }
        var formData = new FormData();
        formData.append('filemulti', filemulti);
        formData.append('codigo', $("#codigo").val());
        $.ajax({
            url: 'miapagina.php',
            method: "POST",
            data: formData,
            processData: false,
            contentType: false,
            success: fileRicevuto,
        });
    }
    
    
    function fileRicevuto(risposta){
    	console.log(risposta);
    }
    Lato php faccio questo:
    Codice PHP:
    var_dump($_FILES);var_dump($_POST); 
    Il risultato dei due var_dump il seguente:
    codice:
    array (size=0)
      empty
    array (size=2)
      'ficheros' => string '[object FileList]' (length=17)
      'codigo' => string 'abc' (length=3)
    Devo usare l'array $_POST e dimenticarmi $_FILES in questo caso?

    In che cosa sbaglio?

    Grazie,
    Roberto

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    577
    Risolto:
    codice:
        $.each($(this)[0].files, function (i, file) {
            formData.append('ficheros[]', file);
        });

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2018 vBulletin Solutions, Inc. All rights reserved.