E' una buona soluzione quella che hai pensato.

Un'altra possibile, meno elegante, ma tanto per darti un'alternativa, potrebbe essere fare solo una tabella e dichiarare come TEXT il campo foto.
Nel campo foto ci metti i nomi di tutte le immagini uploadate dall'utente separati da un carattere speciale a tua scelta, per esempio #
Quando fai la query per recuperare i dati fai poi un explode() sulla variabile contenente i nomi delle foto ed hai così un array coi nomi delle foto dell'utente.
Con questa soluzione alleggerisci un po' il lavoro al db sul quale fai una query in meno, ma come ti ho detto è meno elegante.