Quel codice serve per rendere compatibile uno script per ver. < la 4.0 con versioni di PHP > 4.0. Non viceversa come fai tu.

$_SESSION riceve il valore si, ma e' una variabile locale. Non esiste come variabile superglobale.

Devi utilizzare $HTTP_SESSION_VARS;