Ver Mensaje Individual
  #6 (permalink)  
Antiguo 23/06/2004, 13:38
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
La duración de una sesión puedes ajustarla bajo la directiva (php.ini):
session.gc_maxtimelife

Pero eso va en función de como propages el SID y que duración de la cookie (si es que la usas) tiene (por defecto=0 segundos de duración de la cookie .. lo que "traspasa" el tiempo de expiración al control de la directiva anteriormente mencionda y que por defecto suele ser de 1440 segundos (=24 mimutos))

Con la función ini_set() podrías variar en tiempo de ejecución alguna de las directivas de PHP sobre sesiones (en general todas las que se puedan por ese método y define en la documentación de PHP sobre esa función).

Pero, el hecho de que "q si no esta en uso en 30 sgds que se cierre" .. en principio PHP no puede "cerrar" una página .. lo que si que pude es en el momento que le "pidas" cierta página ver si expiró la sesión (ya lo hace PHP automáticamente en función de esas directivas de sesiones que mencioné) y .. si tu validas (como ya lo haces) la existencia de esas variabels en la sesión .. si no están por qué PHP (la sesión) ya expiró .. actuará tu código que pedirá el "login" denuevo ...

Si necesitas que ese "checkeo" de la sesión fuese "automático" tendrías que recargar la página cada N tiempo para estar constantemente "pidiendo" una página al servidor (tu script php que valida la existencia de esas variables de sesión). Eso lo puedes hacer desde HTML y sus etiquetas <meta > de refresh ...


Este código ..: Te faltó un exit despues de un header() que redirecciona (location).

Código PHP:
<?php
session_name
("usuarios_ingreso");
session_start();
if (!isset(
$_SESSION['id_usuario'])) {
//if (!session_is_registered("id_usuario")){
header("location:index.php");
// Te faltó un: .. sino igualmente se ejecuta el resto del código (ya que tampoco usastes un "else" para este if() ...
exit;
}
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " gmdate("D, d M Y H:i:s") . " GMT"); header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache"); 
include (
"entradaa.htm");
?>
Un saludo,