[PHP] Upload multiplo

poison81

Nuovo Utente
21 Giu 2017
11
0
1
43
Buongiorno,
volevo chiedere come posso fare per inserire i nomi dei files immagine che carico in un unico campo di tipo file nei vari record del database mysql.
Mi spiego...
ho realizzato questo form:
HTML:
<form name="form" method="post" action="insimmok.php" enctype="multipart/form-data">
<input type="file" name="file[]" multiple>
E prima dell'insert ho messo questo codice:
PHP:
$folder='img/';
if(isset($_FILES['file']['name'])){
    $count=0;
    foreach ($_FILES['file']['name'] as $filename) {
        $destination=$folder;
        $origin=$_FILES['file']['tmp_name'][$count];
        $count++;
        $destination=$destination.basename($filename);
        move_uploaded_file($origin, $destination);
    }
}
Però quando parto con l'insert mi mette solo il nome del primo file nel primo record del database mysql che si chiama "foto".
Come faccio ad inserire glia altri nomi dei filles immagine negli altri records e cioè "foto2", "foto3","foto4", e così via?
Grazie
 
Ultima modifica di un moderatore:
ciao
se non ho capito male vuoi mettere in tabella del db i vari nomi dei file, giusto?
ti schematizzo
PHP:
//....
    foreach ($_FILES['file']['name'] as $filename) {
        $destination=$folder;
        $origin=$_FILES['file']['tmp_name'][$count];
        $count++;
        $destination=$destination.basename($filename);
        $da_insert[]=basename($filename);//metti in un array i nomi se anche con il percorso $da_insert[]=$destination.basename($filename);
        move_uploaded_file($origin, $destination);
    }
//.....
//dati di connessione al db
foreach($da_insert as $nome){
    $ris_mysqli_query($connessione, "INSERT INTO tabella(nome_foto) VALUES('$nome')");
}
//.....
oppure fare l'insert nel primo foreach usando $destination o basename($filename)

due cose
racchiudi sempre il codice tra gli appositi bccode
non uppare così a breve, devi avere pazienza
 
Ciao e grazie per avermi risposto.
Ho provato il codice ma mi mette sempre e solo il primo nome.
Ho fatto così:
PHP:
foreach ($_FILES['file']['name'] as $filename) {
        $destination=$folder;
        $origin=$_FILES['file']['tmp_name'][$count];
        $count++;
        $destination=$destination.basename($filename);
        $da_insert[]=basename($filename);
$da_insert[]=$destination.basename($filename);
        move_uploaded_file($origin, $destination);
    }

foreach($da_insert as $nome){
}
e poi ho proceduto con l'insert...
dove sbaglio?
 
Ultima modifica di un moderatore:

Discussioni simili