Mysql
 sql >> Base de données >  >> RDS >> Mysql

Téléchargement et stockage de fichiers d'images multiples PHP dans un dossier et une base de données

Vous pouvez utiliser la notation de tableau de PHP comme vous le feriez dans des champs de formulaire normaux :

Pic 1:  <input type="file" name="establishment_image[]" />
Pic 2:  <input type="file" name="establishment_image[]" />

Cependant, le traitement des fichiers en PHP le gérera un peu différemment de ce à quoi vous vous attendiez côté serveur :

$_FILES = array(
    'establishment_image' => array(
          'name' => array(
              0 => 'name of Pic 1 file',
              1 => 'name of Pic 2 file'
          ),
          'error' => array(
              0 => error code for pic1 upload,
              1 => error code for pic2 upload
      etc...
);

C'est assez facile à gérer, cependant :

foreach(array_keys($_FILES['establishment_image']['name']) as $idx) {
     .... 
}

L'autre option consiste à donner à chaque entrée de fichier un nom unique et à travailler avec ce côté serveur. Si vous codez en dur une "sous-clé" numérique dans chacune :

<input type="file" name="establishment_image_1" />
<input type="file" name="establishment_image_2" />

Ensuite, vous pouvez simplement faire

for ($i = 1; $i <= 5; $i++) {
     echo "Name of file is ", $_FILES["establishment_image_$i"]['name'];
     ... 
}