Zahora cominciò la carriera con la maglia della Dinamo Zagabria, per poi essere prestato al Croatia Sesvete per fare esperienza. Una volta tornato al club proprietario del suo cartellino, ebbe maggiore spazio e contribuì alle vittorie di due coppe nazionali, due supercoppe e due campionati.
Altri trasferimenti in prestito
Giocò poi in prestito con gli sloveni del Koper, per poi tornare in patria e militare con la stessa formula allo Slaven Belupo. Nel 2007 passò al Domžale, sempre in prestito, e contribuì al successo nella supercoppa nazionale a all'affermazione finale nel campionato sloveno, vincendo anche la classifica dei marcatori. Giocò poi per l'Interblock Lubiana, replicando il successo dell'anno precedente in supercoppa.
Brevi esperienze in altre formazioni
Zahora fu poi ingaggiato dai norvegesi del Rosenborg, stavolta a titolo definitivo. Debuttò nella Tippeligaen il 19 aprile 2009, sostituendo Anthony Annan nel pareggio per 1-1 contro l'Odd Grenland.[1] Collezionò altre 4 apparizioni in campionato, senza mai andare a segno: a fine stagione poté però fregiarsi del titolo di campione nazionale.