Możesz przechowywać zawartość obrazu bezpośrednio w bazie danych.
Jak powiedziałeś, musisz przeanalizować typ zawartości z nazwy pliku. Możesz również dodać do bazy danych pole zawierające rozszerzenie.
$extension = end(explode('.', $row['file']));
Następnie musisz utworzyć tablicę zawierającą nagłówek content-type:
$types['jpg'] = 'image/jpeg';
$types['png'] = 'image/png';
następnie wyślij nagłówek (będziesz chciał sprawdzić, czy typy tablica zawiera rozszerzenie klucz i błąd, jeśli nie)
header('Content-Type: ' . $types[$extension]);
Następnie załaduj obraz za pomocą
echo file_get_contents($image);
Że należy to zrobić. Pamiętaj, że ze względów bezpieczeństwa naprawdę musisz sprawdzić, czy parametr ImageID jest liczbą całkowitą:
if(!ctype_digit($_GET['ImageID'])) // error