Non so come è strutturato il tuo db, quindi la categoria utente devi recuperartela tu.
Mettiamo che tu abbia recuperato la categoria e che sia nella variabile $cat.
A questo punto devi sostituire:

codice:
// reindirizzo l'utente
header('Location: privata.php');
exit;
con:

codice:
// reindirizzo l'utente
if ($cat == 'categoria1') {
    header('Location: privata1.php');
    exit;
} elseif ($cat == 'categoria2') {
    header('Location: privata2.php');
    exit;
}
Ovviamente sistemando i nomi delle categorie e le "Location" con quelle del tuo codice (O usando parametri GET, vedi tu).

Per fare in modo che un utente di una categoria non possa vedere l'altra e viceversa fai un controllo sulla categoria utente anche all'interno della pagina di ogni singola categoria. In questo modo se un utente loggato dovesse inserire manualmente l'url di una categoria a cui non appartiene non potrebbe comunque vederla.