scusa ma ora devo scappare e non saro' disponibile per un po'

il concetto e' spiegato nei commenti e a me funziona perfettamente,
prova a fare un po' di debug da solo