2012-04-14 21 views
13

Así que soy un principiante en lo que respecta a PHP, así que necesito un poco de ayuda. Estoy tratando de averiguar cuándo comenzar la sesión. ¿Debo hacerlo cuando el usuario se registra por primera vez o qué pasa cuando inician sesión?¿Cuándo debo declarar session_start() ;?

Además, ¿son las sesiones 'universales' lo que significa que cuando controlo una sesión, ¿funcionará o tendré que incluir un archivo en todas las páginas que comprueben si alguien tiene una sesión?

Respuesta

18

"¿Debo hacerlo cuando el usuario se registra por primera vez o qué pasa cuando inician sesión?"

Debe hacerlo cada vez que desea obtener o establecer cualquier información de sesión. Los datos almacenados en la matriz $_SESSION solo estarán disponibles después de que se inicie la sesión.

"Además, ¿las sesiones 'universales' significan que cuando controlo una sesión, ¿funcionará o tendré que incluir un archivo en todas las páginas para verificar si alguien tiene una sesión?"

Llamar a session_start() es todo lo que necesita para crear una sesión. Si ya se creó una sesión, se usará esa sesión.

+10

Mostrar el código que comprueba si se inició una sesión, y solo comenzar si no se inició ya sería una buena práctica. 'if (! isset ($ _ SESSION)) {session_start;}' –

+9

'session_start()' también debe estar antes de cualquier salida de HTML – MattCan

4

solo para session_start() una vez en cada archivo accede a la variable $ _SESSION. lo mejor sería hacerlo en un lugar central. por ejemplo, un archivo que se incluye en cada uno de sus archivos de aplicaciones.

Cuestiones relacionadas