Estas usando de forma incorrecta el session_name()
Si quieres usar un nombre de sesion personalizado .. el session_name() se ha de indicar antes de tu session_start() .. y a su vez en todasss las páginas que uses sessiones hay q indicar que nombre de session estas usando o vas a usar.
Luego .. si usas session_register() NO debes usar $_SESSION['variable']=valor para reistrarla la variable de sesion .. el array superglobal $_SESSION lo hace por si solo.
En tu caso .. usando el nombre de sesion personalizado sería:
registra_variable_sesion.php
Código PHP:
<?
session_name("elnombrequeledes");
session_start();
$variable="valor";
$_SESSION['tmp']=$variable;
?>
cualquier_otra_pagina.php
Código PHP:
<?
session_name("elnombrequeledes");
session_start();
$variable=$_SESSION['tmp'];
echo "El valor de la variable de sesion tmp es".$variable;
?>
Y por supuesto .. entre la pagina q registres el valor de la variable y las siguientes .. el "salto" a ellas ha de ser via un link, un formulario .. o cualquier otro médio . NO un acceso directo a las siguientes paginas .. sino, perderas el SID (identificador Unico de sesion) .. Usar el array $_SESSION solo está disponible desde PHP 4.1.x en adelante.
Y sobre todo ten en cuenta que el SID se propaga de dos formas: Automático y manual .. Revisa el manual de PHP tema sessiones o las FAQ's de este foro (mira el indice).
Un saludo,