[PHP] Caricamento file multiplo

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
Salve, ho scritto questo mini codice:
Codice:
<!DOCTYPE html>
<html>
<head>
    <title>PHP - Multiple upload using dropzone.js</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" >
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/dropzone/5.4.0/dropzone.css">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/dropzone/5.4.0/dropzone.js" charset="utf-8"></script>
</head>
<body>

<div class="container">
    <div class="row">
        <div class="col-md-12">
            <h2>PHP - Multiple upload using dropzone.js</h2>
            <form action="upload.php" enctype="multipart/form-data" class="dropzone" id="image-upload">
                <div>
                    <h3>Upload Multiple By Click On Box</h3>
                </div>
            </form>
        </div>
    </div>
</div>

<script type="text/javascript">
    Dropzone.options.imageUpload = {
        maxFilesize:100,
        uploadMultiple: true,
        parallelUploads: 1,
        acceptedFiles: ".jpeg,.jpg,.png,.gif,.zip"
    };
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.1/umd/popper.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
</body>
</html>

e il suo test php è questo:
PHP:
<?php

// Check for errors
if($_FILES['file']['error'] > 0){
    die('An error ocurred when uploading.');
}


// Check if the file exists
if(file_exists('uploads/' . $_FILES['file']['name'])){
    die('File with that name already exists.');
}

// Upload file
if(!move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/' . $_FILES['file']['name'])){
    die('Error uploading file - check destination is writeable.');
}

die('File uploaded successfully.');

non da nessun errore ma non carica nulla. Avete idea come mai ? uso la libreria dropzone.js:
http://www.dropzonejs.com/

Mi potete dire come mai?
Grazie mille e buona settimana.
 

macus_adi

Utente Attivo
5 Dic 2017
1.320
88
48
IT/SW
Ciao @luigi777 , Hai sbagliato la conf del file upload.php...
Se stai caricando più file, viene passato un'array... quindi riscrivendo il file upload esce così.... (naturalmente devi crearti le eccezioni del caso)...
PHP:
<?php
/**
 * Created by PhpS.
 * User: Marco Arena Di R.
 * Date: 17/03/2018
 * Time: 19:48
 */

$response=[];
if(isset($_FILES['file'])){
    if(isset($_FILES['file']['name'])){
        foreach ($_FILES['file']['name'] as $k=>$v){

            try{
                move_uploaded_file($_FILES['file']['tmp_name'][$k],'uploads/'.$v);
                $response[]=['code'=>200,'status'=>'success'];
            }catch (Exception $e){
                //var_dump($e);
                $response[]=['code'=>404,'status'=>'error'];
            }

        }

    }
}
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
ok, scusa .. ma nel frattempo ho risolto cosi:
Codice:
<!DOCTYPE html>
<html>
<head>
    <title>PHP - Multiple upload using dropzone.js</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" >
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/dropzone/5.4.0/dropzone.css">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/dropzone/5.4.0/dropzone.js" charset="utf-8"></script>
</head>
<body>

<div class="container">
    <div class="row">
        <div class="col-md-12">
            <h2>PHP - Multiple upload using dropzone.js</h2>          
            <form action="upload.php" class="dropzone"></form>
        </div>
    </div>
</div>

<script type="text/javascript">
    Dropzone.options.imageUpload = {
        url: 'upload.php',
        maxFilesize:100,
        uploadMultiple: true,
        parallelUploads: 1,
        acceptedFiles: ".jpeg,.jpg,.png,.gif,.zip"
    };
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.1/umd/popper.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
</body>
</html>

---
<?php
$ds          = DIRECTORY_SEPARATOR;  //1
 
$storeFolder = 'uploads';   //2
 
if (!empty($_FILES)) {
   
    $tempFile = $_FILES['file']['tmp_name'];          //3            
     
    $targetPath = dirname( __FILE__ ) . $ds. $storeFolder . $ds;  //4
   
    $targetFile =  $targetPath. $_FILES['file']['name'];  //5
 
    move_uploaded_file($tempFile,$targetFile); //6
   
}
?>
e funziona alla grande tranne la mia linea adsl che per una foto da 5.mb ci sta quasi 20 minuti.

ti ringrazio molto e buona serata.
 

macus_adi

Utente Attivo
5 Dic 2017
1.320
88
48
IT/SW
if (!empty($_FILES)) { $tempFile = $_FILES['file']['tmp_name']; //3 $targetPath = dirname( __FILE__ ) . $ds. $storeFolder . $ds; //4 $targetFile = $targetPath. $_FILES['file']['name']; //5 move_uploaded_file($tempFile,$targetFile); //6 }
Ocio a quello che hai scritto..... Controlla se esiste il file name, non verificare se esiste solo FILES... ;)
 
Discussioni simili
Autore Titolo Forum Risposte Data
T [PHP] rendere facoltativo il caricamento di un file PHP 5
A [RISOLTO]Errore caricamento file php PHP 21
Monital [PHP] Eliminare la Barra di caricamento file alla fine dell'esecuzione PHP 11
IImanuII Explorer a scatti php script caricamento file in base al browser PHP 4
G Problema caricamento tabelle MySql da PhP PHP 0
A [PHP] Caricamento database in array PHP 11
B [PHP] Copiare testo da iframe dopo il caricamento? PHP 1
Mauro Guardiani [PHP] script per caricamento video PHP 0
Fede72 PHP e caricamento immagini PHP 9
M Caricamento script php pagina bianca Javascript 2
P Problema caricamento/sostituzione immagini galleria php-jquery jQuery 2
S Form PHP: Messaggio di conferma che compare al caricamento della pagina PHP 11
M Immagine di loading prima del caricamento di una pagina php. PHP 0
M Caricamento Variabili da PHP Flash 0
L Problemi form Pagina php HTML e CSS 2
L php mysql non salva solo id PHP 21
L php mysql cerca e visualizza pagina PHP 0
F Il codice php è giusto? PHP 2
R Aggiornare record mysql con Ajax, jQuery e php Ajax 2
A invio massivo dati a file php Javascript 4
Z MySql injection PHP PHP 1
V PHP form intersecate PHP 0
I [Offro][Retribuito] Programmatore Php Offerte e Richieste di Lavoro e/o Collaborazione 0
P Funzione jQuery Ajax invio file a php jQuery 1
C Dopo chiusura del tag php la stringa html va a capo PHP 1
E Transaction php PHP 11
B ciclare file xml con PHP PHP 1
L Estrazione dati php Database 6
A Aiuto per pagina php PHP 0
E Php select option e ajax PHP 23
I Aiuto php Dependent Lookup PHP 0
T arretramento versione PHP... PHP 3
D problema php mysql PHP 1
D problema php mysql PHP 1
E Barra di avanzamento codice PHP PHP 4
G creazione menu a tendina e invio a pagina php PHP 1
A inserire variabile php colore in div html PHP 2
Z Video protetto con PHP PHP 0
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
I Eecuzione di javascript in ciclo foreach php. PHP 7
S Libreria PHP per creare file dwg o dxf PHP 0
A [cerco - retribuito] Sviluppatore Php freelance per progetti vari Offerte e Richieste di Lavoro e/o Collaborazione 2
L Google chart php mysql PHP 2
R Download file multipli da directory php PHP 0
F pagina dinamica PHP PHP 3
P Rimozione automatica url da sitemap.xml con PHP PHP 1
L php tinymce mi duplica la classe label PHP 3
S Errore PHP - Notice: Undefined index ... PHP 14
N file manager da php 5 a 7 PHP 15
M Utilizzare la funzione mysql_num_rows() in PHP 5 PHP 3

Discussioni simili