Lo recomendable es lo que comenta Mickel .. más que nada por qué la propagación del "SID" (Identificador Único de Sesión) en una cookie es lo más seguro vs a su opción "por el URL".
De todas formas si quieres propagar el SID en -toda- tu aplicación por el URL tendrás que propagarlo usando:
session.use_trans_sid = ON
desactivando:
session.use_cookies = OFF (que quede a OFF .. ahora lo tendras a ON)
y en ciertos redireccionamientos como un header("Location ...") o los que hagas con javscript (como tu caso) .. Tendrás que añadir el SID en esos links a mano, por ejemplo:
Código PHP:
<?
echo "<script> document.location.href='index2.php?".SID."'</script>";
------------------
Otro detalle (o detalla-zo) .. el uso de sesiones que haces NO ES correcto (si, aunque te funcione ..) Deberías usar (a no ser que uses PHP versión 4.1.x o inferiores) los arrays superglobales: $_SESSION y no usar NUNCA session_register() ..
Tampoco es bueno que redirecciones con "javascript" como lo haces en ese caso que se trata de una autentificación/validación:
usa en lugar de:
echo "<script> document.location.href='index2.php'</script>";
usa:
header("Location: index2.php");
Puedes ver todo esto bien detallado en:
www.php.net/session
Un saludo,