PHP – Iniciar sesión si no está iniciada

En este corto artículo te mostraré cómo iniciar una sesión de PHP solo si la misma no está iniciada. De este modo podemos invocar a la función que te mostraré sin importar si la sesión ya ha sido iniciada anteriormente, evitando el aviso que dice:

Notice: session_start(): A session had already been started – ignoring in archivo..php on line N.

(más…)

Cannot change save handler when session is active

Introducción Trabajando en un pequeño proyecto de PHP me topé con la siguiente advertencia: Warning: session_set_save_handler(): Cannot change save handler when session is active. Este mensaje me tuvo dando vueltas por todo internet sin encontrar una solución, pero probando algunas cosas di con ella y vengo a exponerla. PHP permite implementar Leer más…

Manejador de sesiones propio en PHP y MySQL

Introducción

Vamos a ver hoy cómo implementar un manejador de sesiones en PHP hecho por nosotros mismos para poder entender a fondo cómo funcionan.

Como todos sabemos, PHP provee el uso de sesiones cuya persistencia es lograda a través de archivos en el sistema.

Es decir, guarda y lee los datos de las sesiones en archivos (imaginemos que lo hace en ficheros txt para darnos una pequeña idea).

Esto está bien si no usaremos las sesiones en múltiples peticiones AJAX, en donde puede desatarse una lectura concurrente del archivo, lo que ocasionará bloqueos.

Debido a que PHP bloquea el fichero cuando se está leyendo, si se desea abrir el mismo, se generará un error. Por ello es que hoy veremos cómo implementar nuestro propio manejador de sesiones.

Será implementado en MySQL utilizando PDO. Vamos allá.

(más…)