Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

problema con variable de session $_SESSION["username"]

Estas en el tema de problema con variable de session $_SESSION["username"] en el foro de Frameworks y PHP orientado a objetos en Foros del Web. que tengo un sistema de logeo que al loguearse un usuario se le redirige a otra pagina llamada admin.php en la cual hay un echo ...
  #1 (permalink)  
Antiguo 15/12/2011, 01:54
 
Fecha de Ingreso: mayo-2009
Ubicación: Andalucia
Mensajes: 650
Antigüedad: 15 años
Puntos: 1
problema con variable de session $_SESSION["username"]

que tengo un sistema de logeo que al loguearse un usuario se le redirige a otra pagina llamada admin.php en la cual hay un echo $_SESSION["username"];

que no funciona y me dice esto = Notice: Undefined index: username in

como puedo solucionar esto?

session.php

Código PHP:
<?php

class Sesion
{
    public 
$id;
    public 
$username;
    private 
$logueado false;
    
    function 
__construct()
    {
        
session_start();
        
$this->verificar_logueo();
    }
    
    public function 
esta_logueado()
    {
        
        return 
$this->logueado;
        
    }
    
    public function 
loguearse($username)
    {
        if(
$id)
        {
            
$this->id $_SESSION["id"] = $id->id;
            
$this->usuario $_SESSION["username"] = $usuario->username;
            
$this->logueado true;
        }
    }
    
    public function 
desloguearse()
    {
        unset(
$this->id);
        unset(
$_SESSION["id"]);
        
$this->logueado false;
        
    }
    private function 
verificar_logueo()
    {
        if(isset(
$_SESSION["id"]))
        {
            
$this->id =  $_SESSION["id"];
            
$this->username $_SESSION["username"];
            
$this->logueado true;
        }
        else
        {
            unset(
$this->id);
            
$this->logueado false;
        }
    }
}

$sesion = new Sesion();
?>[B][/B]
admin.php

Código PHP:
<?php require_once("../../includes/initialize.php"); ?>
<?php

if($sesion->esta_logueado())
{
    
redireccionar_a("login.php");
}
?>

<?php

$user 
$_POST["username"];
?>
<?php 
include("admin_header.php"); ?>
  <table id="estructura">
    <tr>
      <td id="menu">&nbsp;</td>
      <td id="pagina"><h2>Administración</h2>
      <p>Bienvenido al módulo de Administración, <?php  echo $user?></p>
      <ul>
        <li><a href="gestion.php">Administrar contenidos</a></li>
        <li><a href="create.php">crear usuario nuevo</a></li>
             <li><a href="logout.php">Salir</a></li>
      </ul></td>
    </tr>
  </table>
  
  
<?php include("admin_footer.php"); ?>
  #2 (permalink)  
Antiguo 15/12/2011, 05:32
Avatar de SetheR  
Fecha de Ingreso: enero-2009
Mensajes: 265
Antigüedad: 15 años, 3 meses
Puntos: 44
Respuesta: problema con variable de session $_SESSION["username"]

La solución te la posteé ayer en tu otra duda:

Código PHP:
Ver original
  1. public function loguearse($username)
  2.     {
  3.         if($id)
  4.         {
  5.             $this->id = $_SESSION["id"] = $id->id;
  6.             $this->usuario = $_SESSION["username"] = $usuario->username;
  7.             $this->logueado = true;
  8.         }
  9.     }


$id no existe, asi que no crea la variable de sesión.

PD. Deberías aprender a hacer un debug de tu porgrama. Estos fallos los verías al instante

EDIT: Como veo que en el otro post tampoco me entendiste, te lo voy a explicar.

Código PHP:
Ver original
  1. if($id)
En esta línea, $id, no existe. Si lo que quieres es acceder al miembro de la clase, debes poner
Código PHP:
Ver original
  1. $this->
delante. El otro modo el pasarla como argumento al método loguearse

Etiquetas: php, session, variables
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 14:44.