Come da manuale, sarebbe opportuno evitare di usare session_register() e $_SESSION insieme.

Riscrivi il tuo codice inserendo per prima cosa la chiamata a session_start().

Poi abilita la visualizzazione degli errori e risolvi gli eventuali errori.

Infine, piuttosto che usare fopen() etc. a quel modo, usa:

http://www.php.net/file_get_contents
http://www.php.net/file_put_contents