Perché crei una nuova sessione o lavori sulla sessione dopo aver già stampato qualche carattere.

Se metti session_start() devi metterlo prima di qualunque carattere stampato (con echo o fuori da <? ?>)