$_SESSION es un array común y corriente (bueno, mejor dicho no es tan "corriente" ya que es "superglobal" donde puedes acceder a sus indices desde cualquier sitio (función) sin importar el ambito de las variables ya que ya son "superglobales").. Para definir una "variable" y su valor correspondiente en ella, usa un "indice" de ese array para el "nombre de tu variable" y le asignas tu valor; directamente o tomado desde otro proceso/variable que ya uses ..
Ejemplo:
Código PHP:
<?
session_start()
$variable="nose";
$_SESSION['variable_sesion']=$variable;
ó bien:
Código PHP:
<?
session_start();
$_SESSION['variable_sesion']="nose";
Y para acceder a esa "varaible_sesión" .. simplemente usa ese indice del array $_SESSION:
Código PHP:
<?
session_start();
echo $_SESSION['variable_sesion'];
Si quieres propagar el SID de forma manual sin uso de cookies:
Código PHP:
header("location: login.php?session_name()."=".session_id() ")
ó bien usando SID como constante que es:
Código PHP:
header("location: login.php?".SID)
Pero antes de nada, asegurate e intenta entender que es el "SID" y las formas que hay de propagarlo: COOKIES (lo más seguro y lo que recomienda PHP.net) o bien manualmente como los ejemplos dados.
El que "PHP" propague el SID en cookies o no lo determina las directivas de configuración: php.ini
session.use_cookies ... y opcionalmente session.use_only_cookies (con todas las demás directivas de _cookies que definen tiempos de expiración .. y otros detalles que no suele ser necesario ajustar de lo que PHP trae por defecto).
Un saludo,