Ver Mensaje Individual
  #4 (permalink)  
Antiguo 17/02/2003, 17:14
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Mensaje Original por César López
Asignarle un valor nulo a una sesión puede traer problemas a la larga, además de que esa sesión ni siquiera se ha registrado.

Lo mejor para evitar eso es:

if(!session_is_registered('visitas')) {
[conectate a la base de datos y actualizala con una visita más]
session_register('visitas');
}

Listo.

Un Saludo.-

P.D: Tomo por entendido que tienes session_start() en algún otro archivo madre. Si no es así, debes agregarlo antes de cualquier cosa.
Si registras variables de session usando el array superglobal $_SESSION['variable'] ... las funciones session_is_register() no actuan .. Por eso uso isset() como una variable cualquiera. Al NO ser globales .. tampoco me importa si tiene valor o no .. pues lo uso como flag como he comentado ...

Todo esto no lo digo yo .. lo dice:
Cita:
session_is_registered() returns TRUE if there is a variable with the name name registered in the current session.

Note:
If $_SESSION (or $HTTP_SESSION_VARS for PHP 4.0.6 or less) is used, use isset() to check a variable is registered in $_SESSION.

Caution:
If you are using $_SESSION (or $HTTP_SESSION_VARS), do not use session_register(), session_is_registered() and session_unregister().
Tu método es valido si registra variables via session_register como así lo haces en tu ejemplo .. Pero han llegado nuevos tiempos para PHP xD (desde 4.1.x en adelante) .. Usa en la medída de lo posible $_SESSION ..

Un saludo ..