[PHP] Caricamento file multiplo

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
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.343
91
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.086
1
38
42
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.343
91
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
F Cerco Hosting con VECCHIE versioni di php Hosting 0
Cosina Captcha php PHP 1
S passare un valore da un form a un file .php con metodo post PHP 4
N php msyql PHP 6
N php problemi a visualizzare video PHP 3
A menu a tendina php PHP 1
D protezione cartelle: blocco visualizzazione/scaricamento contenuto, ma abilitazione utilizzo dati da parte di file .php presenti sul sito Web Server 1
F Php date_diff PHP 1
K [PHP] Aggiungere caratteri ad una stringa in base alla lunghezza della stessa PHP 2
C Wp-admin a file php WordPress 5
Lino80 [Retribuito] Cerco programmatore php per modifica/inserimento funzione/valori da un plugin importer wordpress Offerte e Richieste di Lavoro e/o Collaborazione 0
csi Inviare file jpg in locale alla stampante con php PHP 0
M Passaggio variabili array php su un tasto jq PHP 3
E Php aggiornamento tabella PHP 9
G phpmailer e php 8.1 con estensione mysqli PHP 6
M Invio dati database via email php PHP 0
K [php] Problema con inner join PHP 4
K [php]form invio dati PHP 0
P Codifica caratteri speciali mysql php PHP 0
K [PHP] Problema con variabili concatenate. PHP 1
E Stampante termica escpos-php PHP 6
JeiMax Modifica codice php personalizzato PHP 2
G Come modificare un pdf in php PHP 1
U Link a doppio file PHP PHP 0
E PHP & jQuery PHP 8
N Passare array da php a javascript PHP 5
F Applicazione PHP/MySQL per prenotazioni: limitare il numero massimo di posti prenotabili PHP 20
L tipo boolean non funzionante su mariadb (mysql). E codice php 7.4. PHP 0
U PHP creare un file excel dopo ricerca nel DB PHP 0
M PHP/MySQL - Estrarre valori min e max di ogni gruppo PHP 5
F Php e fatturazione elettronica PHP 0
P lanciare script asp (o php) da jquery Javascript 1
Couting95 inserire dati da un file di testo in una tabella in php PHP 1
P Data scraping in PHP non funziona PHP 4
C Calcoli matematici in php PHP 5
F Scrivere dei dati in word con php PHP 0

Discussioni simili