Praticamente dove la sessione non è registrata, non fa quello che dovrebbe... praticamente non passa $l
Codice PHP:
<?
if(!isset($_SESSION['l'])) { //se la sessione non c'è
                            
if(isset($_COOKIE['language'])) { //se il cookie già c'è
$l=$_COOKIE['language'];}
else     { 
//se il cookie non c'è
setcookie('language','ita'); //imposto il cookie col valore Italiano
$l='ita'//Imposto il valore di default
    

session_start();
session_register('l'); //in ogni caso faccio partire la sessione registrando la lingua
                        
}
else 
//se invece la sessione già esiste
session_start();

?>