Buenas tardes, en cuanto a tu duda sobre la sesion, te trato de dar una respuesta entendible ¿vale?:
En primer lugar una sesion dura hasta que tu hagas la siguiente instruccion en alguno de tus scripts:
session_destroy();
Ahora si tu deseas controlar cuanto tiempo quieres que dure tu sesion por ejemplo 30 minutos, entonces guardas en alguna variable llamada
$horaEntrada, y como php pasa de ventana en ventana, es decir mediante link's (enlaces), cada vez que ingrese a otra pagina guardas en otra variable
$horaActual, luego calculas el tiempo transcurrido y si es mayor o igual a 30 minutos entonces lo redireccionas al logeo o a tu index.
Espero haber sido explicito.
Saludos