Foros del Web » Programando para Internet » PHP »

problema con sesiones

Estas en el tema de problema con sesiones en el foro de PHP en Foros del Web. holas tengo una pag de login y estoy creando la session asi Código PHP:   if( $usuario_existe == 01 )              {                 $mensaje = "usuario y/o contraseña incorrecta" ...
  #1 (permalink)  
Antiguo 19/06/2005, 14:11
 
Fecha de Ingreso: octubre-2004
Ubicación: chile
Mensajes: 116
Antigüedad: 19 años, 6 meses
Puntos: 0
problema con sesiones

holas tengo una pag de login y estoy creando la session asi

Código PHP:
 if($usuario_existe==01)
             {
               
$mensaje="usuario y/o contraseña incorrecta";
                 
header("location:index.php?mensaje=$mensaje");
             }
else
         
$matricula=$usuario_existe['n_matricula'];                                  
                 
session_start();
                 
session_unset();
                 
session_destroy();
                 
                 
session_start();
                 
session_register("matricula"); 
y en la otr pag estoy preguntanto si se creo la sesion asi

Código PHP:
<?  session_start();
     if (!isset(
$_SESSION['matricula']))
      {
      
$mensaje="usuario no inicio sesion";
      
session_destroy();
            
header("Location:index.php?mensaje=$mensaje");
      exit;
      }
            
?>
el problema es ke si intento logear con un usuario ke no existe me devuelve el mensaje de ke no inicie sesion y no el mensaje ke usuario incorrecto como deveria....
como lo soluciono y cual es mi error??

esop grax
  #2 (permalink)  
Antiguo 21/06/2005, 04:57
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
No debes revolver variables que defines como globales con variables superglobales...
Lee la documentación oficial: www.php.net/session_register
Vista las FAQ respecto a sesiones...
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #3 (permalink)  
Antiguo 21/06/2005, 07:31
 
Fecha de Ingreso: agosto-2004
Mensajes: 52
Antigüedad: 19 años, 8 meses
Puntos: 0
Totalmente de acuerdo
  #4 (permalink)  
Antiguo 23/06/2005, 15:59
 
Fecha de Ingreso: octubre-2004
Ubicación: chile
Mensajes: 116
Antigüedad: 19 años, 6 meses
Puntos: 0
ok vale por el dato...pero la verdad no entiendo mucho...como lo korrijo ??
  #5 (permalink)  
Antiguo 23/06/2005, 16:10
 
Fecha de Ingreso: junio-2004
Mensajes: 60
Antigüedad: 19 años, 10 meses
Puntos: 1
Dark... debes mirar el manual de PHP.
Un dato es que $_SESSION['matricula'] es una variable de manejo global, por lo cual no te conviene utilizar luego session_register("matricula");
Lee un poco la info de sessiones para aclararte las dudas.

Al3jo.
  #6 (permalink)  
Antiguo 23/06/2005, 16:16
 
Fecha de Ingreso: octubre-2004
Ubicación: chile
Mensajes: 116
Antigüedad: 19 años, 6 meses
Puntos: 0
Cita:
Iniciado por al3jo
Dark... debes mirar el manual de PHP.
Un dato es que $_SESSION['matricula'] es una variable de manejo global, por lo cual no te conviene utilizar luego session_register("matricula");
Lee un poco la info de sessiones para aclararte las dudas.

Al3jo.
pero session_register("matricula"); lo hago para crear esa variable global, entonces en la otra pag pregunto si existe con if (!isset($_SESSION['matricula']))

por eso es k no entiendo k esta mal
  #7 (permalink)  
Antiguo 23/06/2005, 16:39
 
Fecha de Ingreso: junio-2004
Mensajes: 60
Antigüedad: 19 años, 10 meses
Puntos: 1
Es sencillo: No debes mezclar $_SESSION con session_register.

de: http://ar.php.net/session_register
Caution

If you are using $_SESSION (or $HTTP_SESSION_VARS), do not use session_register(), session_is_registered(), and session_unregister().

////////////

<? //controla.php
session_start();
if ($_SESSION["logueo"]!="SI"){
header ("Location: prueba.php");
exit();
}
?>

en cada pagina colocas:

<?
require("controla.php");
?>

<html>
<head></head>
<body>
aca va tu pagina
</body>
</html>

Y no te olvides de colocar donde consultas la db y verificas q el usuario existe:
<?
session_start();
$_SESSION["logueo"]= "SI";
$_SESSION["who_is"]= $_POST["nombre"];
header("Location:tu_pagina_qde inicio_login.php");
exit();
?>

Y cuando haces el logout. elimina todas las variables asi.
<?
session_unset();
session_destroy();
?>
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 16:50.