Scusate se mi intrometto ma credo ci sia una soluzione più semplice.

Suppongo che quando si seleziona una categoria di foto dal menù a tendina, alla query si aggiunga una clausola di WHERE.
Clausola che nell'ipotesi "Tutte le Categorie" non esiste.
Correggetemi se sbaglio.

Se così è, basta fare come segue.

Codice PHP:
/*
$where lo compili in base alla categoria selezionata
mediante il menù a tendina.
Se nulla è selezionato $where = "";
*/

$sql "SELECT * FROM tabella "$where;
$query mysql_query($query);
$num mysql_num_rows($query);
mysql_free_result($query); 
Con questo metodo, $num contiene il numero di record che ritorna la query... senza arzigogoli di nessun tipo!