Mysql
 sql >> Datenbank >  >> RDS >> Mysql

PHP-Upload mehrerer Bilddateien und Speicherung in Ordner und Datenbank

Sie können die Array-Notation von PHP wie in normalen Formularfeldern verwenden:

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

Die Dateiverarbeitung in PHP handhabt dies jedoch etwas anders, als Sie es auf der Serverseite erwarten würden:

$_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...
);

Es ist jedoch einfach genug zu handhaben:

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

Die andere Option besteht darin, jeder Dateieingabe einen eindeutigen Namen zu geben und mit dieser Serverseite zu arbeiten. Wenn Sie in jedem einen numerischen "Unterschlüssel" fest codieren:

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

Dann können Sie einfach tun

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