Ciao Fabrizio,
quello ceh vuoi fare, si puo' ottenere direttamente dalla query, facendo in modo che a seconda delle condizioni di categoria e foto, vengano visualizzati o no i risultati.
Per capire se il campo è pieno o no, puoi scrivere nella WHERE della tua query where foto is not null AND categoria is not null