"Non funziona" non è molto indicativo, sarebbe meglio una descrizione del comportamento del codice ... comunque, prima di tutto, devi correggere quello che ti ho detto e poi devi mostrare tutto il codice, non solo questa funzione ...