Difficilmente mi vedrai postare del codice, quello che posso fare e' cercare di indirizzarti in modo appropriato.

Innanzi tutto nel codice aggiornato che hai postato manca la query SQL per cambiare il valore del campo ultima_v. Secondo poi questa query va' inserita DOPO la mysql_fetch_assoc() che usi per ottenere i dati dell'utente. Se cambi ultima_v prima, la mysql_fetch_assoc() non torna piu' i dati dell'utente ma un semplice "true" dovuto all'update che segue:

Codice PHP:
   mysql_query("update members set ultima_v = CURRENT_TIMESTAMP where id = ".$member['member_id']); 
Nella tua prima versione del codice usavi una INSERT per inserire un nuovo utente col cambio ultima_v impostato su $date. Ma per l'appunto inserivi un nuovo utente, non modificavi l'utente effettivamente loggato.

Inoltre perche' rigeneri l'ID di sessione? Non vedo motivi evidenti leggendo il tuo codice.

Evita di scrivere freneticamente, rifletti su quello che fai e leggi attentamente la documentazione ufficiale.

In bocca al lupo,
Claudio M. Alessi