Ver Mensaje Individual
  #2 (permalink)  
Antiguo 29/09/2006, 09:58
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
El uso de session_name() para que tenga efecto NO se usa despues de session_start() sino -antes-

No es correcto:
Código PHP:
session_start();
session_name($nick); 
$_SESSION['$nick'] = "$Nick"
Sería correcto:
Código PHP:
session_name($nick); 
session_start();
$_SESSION['$nick'] = "$Nick"
Ahora .. el "sentido" que le das a tus variable de sesión y la sesión en sí es muyyyyyyyyyyyyyyyyy confusooooooo!.

"La sesión" debería tener un nombre .. FIJO para toda tu aplicación o bien ni le pongas nombre y PHP le dará uno por defecto (PHPSESSID si no me equivoco).

La variable de sesión que debes crear sería en tu caso algo tipo: "nick" -> $nick ..

Sería algo tipo:

Código PHP:
session_name('mi_aplicacion'); 
session_start();
$_SESSION['nick'] = "$Nick"
El tema de crear a su vez una cookie .. no sé con qué fin .. Explicalo!. Las sesiones ya propagan tus datos de por sí .. ¿para que redundancia de datos en una cookie? (como no sea con otros fines .. ?).

para acceder a tu variable de sesión creada y empezar a realizar validaciones y demás . .tan sólo sigue el mismo proceso:

Código PHP:
<?
session_name
('mi_aplicacion'); 
session_start();
echo 
"Usuario autentificado: ".$_SESSION['nick'];
?>
Y como "variable" que es $_SESSION puedes validar su existencia para detectar "intrusos" que no pasan a ese script por tu autentificación.

Código PHP:
session_name('mi_aplicacion'); 
session_start();
if (empty(
$_SESSION['nick'])){
   die (
"Acceso incorrecto");
}

echo 
"Usuario autentificado: ".$_SESSION['nick']; 
Te fijas que -siempre- uso session_mame() con el nombre que le doy al uso de sesiones en esta aplicación? .. Bueno . .ese dato es opcional pero si lo defines en un script . .lo tienes que usar en todos e igual.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.