Merhaba
Örnek kod aşağıdaki gibidir:
<form method="post" action="yukle.php" enctype="multipart/form-data">
<select name="firma">
<option value="1">Firma adı</option>
</select>
<!-- multiple dersek tek input ile birden çok dosya yükleyebiliriz -->
<input type="file" multiple name="dosyalar[]">
<button type="submit">Gönder</button>
</form>
<?php
// dosyaların yükleneceği yer
$uploadyeri = 'uploads/';
//Hangi dosya tiplerine izin veriyoruz?
$type2ext = [
'image/jpeg'=>'jpg',
'image/png'=>'png',
'image/gif'=>'gif'
];
// Form gönderildi mi? en az 1 dosya var mı?
if(isset($_POST['firma']) && intval($_POST['firma']) > 0 && isset($_FILES['dosyalar']) && count($_FILES['dosyalar']) > 0){

$firmaid = intval($_POST['firma']);
//Dosyaları döngüye aldık
foreach($_FILES['dosyalar']['tmp_name'] as $k=>$do){
//Dosya kabul ettiimiz tiplerden biri mi?
if(in_array(mime_content_type($do), $type2ext)){
//Yeni ad verelim
$yeniad = time().'-'.rand(1000,9999).'.'.$type2ext[mime_content_type($do)];
//Dosyayı yükleyelim
move_uploaded_file($do,$uploadyeri.$yeniad);
// Daha önceden bağladındığımız veritabanına dosyaları kaydedlim
mysqli_query($conn, "insert into dosyalar (firma_id, resim_url) values('".$firmaid."','".$yeniad."')");
}else{
// Dosyanın kabul ettiğimiz tiplerden biri olmadığını söyleyelim ve sıradaki dosyaya geçelim.
echo $_FILES['dosyalar']['name'][$k].' dosyası geçersiz.';
continue;
}

}
}
?>