Foros del Web » Programando para Internet » PHP »

Cerrar Sesión

Estas en el tema de Cerrar Sesión en el foro de PHP en Foros del Web. Buenas tardes amigos, soy nuevo en esto de PHP, apenas hice una pagina web en la q pide nombre de usuario y contraseña si estas ...
  #1 (permalink)  
Antiguo 17/10/2009, 16:38
Avatar de Sistemasemv  
Fecha de Ingreso: marzo-2009
Mensajes: 59
Antigüedad: 15 años
Puntos: 0
Pregunta Cerrar Sesión

Buenas tardes amigos, soy nuevo en esto de PHP, apenas hice una pagina web en la q pide nombre de usuario y contraseña si estas registrado entras a la pagina bueno mi pregunta es como le puedo hacer si despues de cierto tiempo que no esten utilizando la pagina esta se cierre automaticamente y vuelava a pedir que introduscan su nombre de usuario y contraseña asi como en esta pagina de foros del web no se si me entiendan ??
  #2 (permalink)  
Antiguo 17/10/2009, 16:50
Avatar de intiweb  
Fecha de Ingreso: mayo-2009
Ubicación: Capital Federal
Mensajes: 363
Antigüedad: 14 años, 11 meses
Puntos: 5
Respuesta: Cerrar Sesión

hola, creo que entiendo lo que queres hacer la funcion es una derivada de session_start fijate en los manuales de funciones de session y lo explica muy detallado es muy sencillo solo hay que cambiar la funcion session_start por una que ademas de inicar la session le da un tiempo de duracion.....

supongo que al sistema lo hisiste con session_start no??
  #3 (permalink)  
Antiguo 17/10/2009, 19:29
Avatar de Kenichi  
Fecha de Ingreso: enero-2009
Ubicación: Rosario, Argentina
Mensajes: 160
Antigüedad: 15 años, 3 meses
Puntos: 6
Respuesta: Cerrar Sesión

Hola, ademas de usar sesiones, para logeos temporales me parece que es mejor usar cookies, ya que puedes darle un tiempo de duracion determinado a cada una:

Código PHP:
<?php
// Funcion setcookie():
setcookie($nombre$contenido$duracion$dominio);
// Un ejemplo para poner un nombre de usuario y que dure un año:
setcookie("nombredeusuario","Kenichi"time()+60*60*24*365'/');
// O si lo prefieres, algo mas simple:
setcookie("nombredeusuario","Kenichi");
?>
Pero si usaste sesiones, debes modificar la duracion de sus variables con la funcion ini_set(), aqui hay un post parecido.
__________________
Cansado de tener que hacer webs con doble login, o no entender nada del codigo de phpBB? Usa un sistema de foros simple, usa Linken Foros
  #4 (permalink)  
Antiguo 19/10/2009, 10:15
Avatar de Sistemasemv  
Fecha de Ingreso: marzo-2009
Mensajes: 59
Antigüedad: 15 años
Puntos: 0
Exclamación Respuesta: Cerrar Sesión

Gracias IntiWeb por tu respuesta estoy buscando esa variable y si lo tengo como session_start(); hasta ahora no encontrado nada si tu me pudieras hechar la mano te lo agradeceria muchisimo
  #5 (permalink)  
Antiguo 19/10/2009, 10:26
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 17 años, 8 meses
Puntos: 70
Respuesta: Cerrar Sesión

Quizás te sirva...

http://www.desarrolloweb.com/articulos/1991.php


Saludos
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
  #6 (permalink)  
Antiguo 19/10/2009, 16:04
Avatar de Sistemasemv  
Fecha de Ingreso: marzo-2009
Mensajes: 59
Antigüedad: 15 años
Puntos: 0
Pregunta Respuesta: Cerrar Sesión

asi es como tengo en mi pagina en donde puedo agregarle la liena que me falta gracias:

<?php
session_start();
//Conectando a base de datos
$con = mysql_connect("localhost", "root", "123")
or die("<h3>No se ha podido establecer conexión con el servidor.</h3>");
mysql_select_db("registro") or die("<h3>La base de datos no se ha encontrado</h3>");
//generando la consulta sobre el usuario y su contrasena
$qr = " SELECT nodenomina, nick, nombre, PASS, nivel ";
$qr .= " FROM usuario WHERE nick = '" . $_POST['usuario'] . "'";
$qr .= " AND pass = '" . $_POST['clave'] . "'";

//ejecutando la consulta
$rs = mysql_query($qr);
$row = mysql_fetch_object($rs);
//verificando si hay un usuario con ese password mediante numrows
$nr = mysql_num_rows($rs);
if($nr == 1){
//usuario y contraseña válidos
//se define una sesion y se guarda el dato session_start();
$_SESSION["autenticado"] = "si";
$_SESSION["nick"] = $_POST['nick'];
$_SESSION["nivel"] = $row->nivel;

include "seguridad.php";

switch($row->nivel)
{
case 1:
include "index1.php";
break;

}


}
else if($nr <= 0) {
//si no existe se va a login.php y pone el valor de error a SI
header("Location: login.php?errorusuario=si");
} ?>
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:11.