Tengo dos páginas: login.php e index.php (primero se pasa por login y luego por índex). En el login se generan unas variables de la sesión y, donde tengo el print_r, se muestra el array completo y perfecto. Sin embargo, al pasar automáticamente al index.php todo el array se vacía. ¿Por qué? (NOTA: En localhost va bien pero en mi servidor se vacía (es un hosting 1&1)
login.php
Código PHP:
Ver original<html>
<head>
<title>Entrando...</title>
<meta charset="utf-8"/>
</head>
</html>
<?php
/* 1. Incorporamos los valores de usuario y contraseña */
$NombreUsuario = $_POST['NombreUsuario'];
$ClaveUsuario = $_POST['ClaveUsuario'];
/* 2. Conectar a la base de datos */
include('conexion.php');
/* 3. Creamos una consulta */
$Query_string = "SELECT * FROM Usuarios WHERE NombreUsuario='".$NombreUsuario."'";
/* 4. Ejecutar la consulta */
$MyQuery = $MyConnect->query($Query_string);
/* 5. 'Fetch'-amos ese query */
$MyFetch = $MyQuery->fetch_assoc();
/* 6. Vamos a comprobar si la contraseña es correcta */
if ($MyFetch['ClaveUsuario'] == $ClaveUsuario){
$_SESSION['IDUsuario'] = $MyFetch['ID'];
$_SESSION['NombreUsuario'] = $MyFetch['NombreUsuario'];
$_SESSION['ClaveUsuario'] = $MyFetch['ClaveUsuario'];
$_SESSION['RolUsuario'] = $MyFetch['RolUsuario'];
$_SESSION['NombreCompletoN'] = utf8_encode($MyFetch['NombreCompleto-N']); $_SESSION['NombreCompletoA1'] = utf8_encode($MyFetch['NombreCompleto-A1']); $_SESSION['NombreCompletoA2'] = utf8_encode($MyFetch['NombreCompleto-A2']); echo '<meta http-equiv="refresh" content="3;URL=index.php"/>';
}else{
/* 6.2. Si es incorrecta volvemos al login con un mensaje de error mediante la variable errorID */
echo '<meta http-equiv="refresh" content="0;URL=../index.php?errorID=1"/>';
}
?>
index.php
Código PHP:
Ver original<html>
<head>
<title>Mi plataforma educativa</title>
<link rel="stylesheet" href="../styles/styles.css"/>
<meta charset="utf-8"/>
</head>
<body>
<?php
// Incluimos el head
include('head.php');
// Incluimos la columna izquierda del tipo de usuario determinado
include('Cols/'.$_SESSION['RolUsuario'].'/ColIzq.php');
// Si el usuario es supervisor también ponemos la derecha
if ($_SESSION['RolUsuario'] == 4){
include ('Cols/4/ColDch.php');
}
?>
</body>
</html>