Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Upload multiplo e nome file

    ciao!
    ho uno script che mi esegue l'upload multiplo di immagini.
    il numero massimo di immagini è 3.
    alla fine dell'upload inserisco dei dati in un db:
    -titolo
    -data
    -nome file1
    -nome file2
    -nome file3

    quello che nn riesco ad ottenre è il nome dei file da passare alla funzione:
    Codice PHP:
    for ($i 0$i count($_FILES['file']['name']); $i++) {
                if (
    $_FILES['file']['name'][$i] != "") {
                    list(
    $width$height$type$attr) = getimagesize($_FILES['file']['tmp_name'][$i]);
                    
    $nome_upload uniqid($_POST['titolo'] . ' - 'true) . strrchr($_FILES['file']['name'][$i], '.');
                    
    $destinazione $cartella $nome_upload;
                    if (
    $_FILES['file']['size'][$i] <= $maxSize) {
                        if (
    in_array($_FILES['file']['type'][$i], $acceptType)) {
                            if (
    $width 500) {
                                
    $imageLarge WideImage::load($_FILES['file']['tmp_name'][$i]);
                                
    $thumb $imageLarge->resize(500null);
                                
    $thumb->saveToFile($destinazione);
                            } else {
                                
    $imageLarge WideImage::load($_FILES['file']['tmp_name'][$i]);
                                
    $thumb $imageLarge->saveToFile($destinazione);
                            }
                            
    $upload TRUE;
                            if (
    $upload) {
                                echo 
    "File " $i " inserito
    "
    ;
                            } else {
                                echo 
    "Errore nell'upload
    "
    ;
                            }
                        } else {
                            echo 
    "Tipo di file non valido
    "
    ;
                        }
                    } else {
                        echo 
    "File troppo grande
    "
    ;
                    }
                } elseif (
    $_POST['btn_news']) {
                    echo 
    'Non ci sono file da inserire
    '
    ;
                }
            }
            
    addNews($_POST['titolo'], $_POST['text'], $_POST['data'], $destinazione1$destinazione2$destinazione3$_POST['pubblicato']); 
    come faccio a separare e memorizzare i nomi del file di quel ciclo in modo poi da passarli alla funzione addNews?

  2. #2
    Utente di HTML.it L'avatar di Secta
    Registrato dal
    May 2002
    Messaggi
    365
    Con $_FILES['file']['name'][$i] ottieni il nome del singolo file che stai ciclando... quindi ti conviene fare cosi... dentro il ciclo for crei un array $names e la popoli cosi

    Codice PHP:
    $names[] = $_FILES['file']['name'][$i
    ora $names conterrà il nome del files... che non è detto siano tre, bensì potrebbero anche essere uno o due... fatto ciò passi l'array come argomento alla funzione addNews(..., $names,...) e i nomi li estrai all'interno della stessa.
    "Dai diamanti non nasce niente, dal letame nascon fiori."
    Fabrizio De Andrè

  3. #3
    ciao!
    stavo ragionando sul tuo codice.
    l'unic problema è che il nome del file lo imposto "a mano":
    $nome_upload = uniqid($_POST['titolo'] . ' - ', true) . strrchr($_FILES['file']['name'][$i], '.');

    a ogni i-esimo file viene impostato un nome formato uniq e $_POST['titolo'].
    quindi nn posso prendere direttamente $_FILES['file']['name'][$i] xchè sennò mi salverebbe su db un valore e come nome dell'immagine un altro valore.

  4. #4
    Utente di HTML.it L'avatar di Secta
    Registrato dal
    May 2002
    Messaggi
    365
    Allora ti basta semplicemente fare

    Codice PHP:
    $names[] = $nome_upload
    ed hai risolto.
    "Dai diamanti non nasce niente, dal letame nascon fiori."
    Fabrizio De Andrè

  5. #5
    in verità avevo già fatto la prova ma avevo sbagliato da un'altra parte e nn mi usciva cmq il risultato che volevo.
    ho sistemato e funziona tutto.
    grazie per l'aiuto!

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 © 2024 vBulletin Solutions, Inc. All rights reserved.