Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/07/2013, 13:11
Avatar de ghiper
ghiper
 
Fecha de Ingreso: julio-2013
Ubicación: Guadalajara Jalisco
Mensajes: 80
Antigüedad: 11 años, 7 meses
Puntos: 0
Pregunta problema con mis sesiones

Saludos, e estado aprendiendo el lenguaje de programación php y estoy haciendo un sistema de inicio de sesión de con diferentes tipos, donde ya logre hacer el inicio de sesión a cada tipo de usuario ´mi codigo es el siguiente:
Código PHP:
<?php
session_start
();
include_once 
"conexion.php";
function 
verificar_login($user,$password,&$result) {
    
$sql "SELECT * FROM usuarios WHERE usuario = '$user' and password = '$password'";
    
$rec mysql_query($sql);
    
$count 0;
    
 
    while(
$row mysql_fetch_object($rec))
    {
        
$count++;
        
$result $row;
    }
 
    if(
$count == 1)
    {
        return 
1;
    }
 
    else
    {
        return 
0;
    }
    
}
 
if(!isset(
$_SESSION['userid']))
{
    if(isset(
$_POST['login']))
    {
        if(
verificar_login($_POST['user'],$_POST['password'],$result) == 1)
        {
            
$_SESSION['userid'] = $result;
            switch(
$result->tipo)
{                
            case 
'0':            
            
header('location:principal.php');
            exit;
            break;
             
            case 
'1':            
            
header('location:principal2.php');
            exit;
            break;
             
            case 
'2':            
            
header('location:principal3.php');
            exit;
            break;
             
            case 
'3':            
            
header('location:principal4.php');
            exit;
            break;
             
            default:
            
header('location:index.php');
            exit;
}
        }        
        else
        {
            echo 
'<div class="error">Su usuario es incorrecto, intente nuevamente.</div>';
        }
        
    }    
?>
<form action="" method="post" class="login">
    <div><label>Nombre de Usuario</label><input name="user" type="text" ></div>
    <div><label>Contrase&ntilde;a</label><input name="password" type="password"></div>
    <div><input name="login" type="submit" value="Inicio"></div>
    <div><a href="login.php" class="registrar"></a></div>
</form>
<?php
}
else {
    include_once(
"index.php");
    }
?>
esto ya me dirige a cada tipo de usuario según sea el login.

mi problema que cuando agrego los archivos "principal.php" por ejemplo, donde tomo mi variable de sesión para mostrar el usuario no me imprime el nombre del usuario solo el texto de "bienvenido" mas no el nombre el codigo que uso es el siguiente:
Código PHP:
<?php
  session_start
();
  
// Inicia sesión
  // Si la sesión de usuario no se establece,
  // esta página saltará a página de acceso
  
if (!isset($_SESSION['userid'])) { 
     
header('Location: index.php');
  } else {
session_unset('userid');}
   
//Borra la variable de sesión
?>

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Documento sin título</title>
</head>

<body>
<p>Bienvenido:<?php echo $_SESSION['userid']; ?></p>
<br/><a href="logout.php">Logout</a>

</body>
</html>
espero me entiendan en mi pregunta y me puedan ayudar repito tengo escaso una semana aprendiendo el lenguaje y aun me tengo muchas dudas