PHP - Notice: Undefined index

 
Vista:
sin imagen de perfil

Notice: Undefined index

Publicado por Santiago (3 intervenciones) el 30/10/2017 01:49:45
Tengo el siguiente problema.
php-problema

y este es el codigo

php-codigo

Enque me estare equivocando?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de abzerox
Val: 575
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Notice: Undefined index

Publicado por abzerox (157 intervenciones) el 30/10/2017 02:05:10
Hola, el problema lo dice claramente el mensaje, estas intentando acceder a un indice que no existe, prueba con esto:

1
2
3
4
5
6
7
8
9
$rol = isset($_SESSION['rol']) ? $_SESSION['rol'] : '';
 
if (empty($rol) {
    header('Location: /login.php');
    exit();
}
 
// aquí el resto del código
...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil

Notice: Undefined index

Publicado por Santiago (3 intervenciones) el 30/10/2017 02:17:21
Muchas gracias por tu apoyo me ha funcionado
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Notice: Undefined index

Publicado por Santiago (3 intervenciones) el 30/10/2017 04:44:35
hola despues de que me ayudastes con el error me dio el siguiente:

error-2

y este el codigo de : sesionListener.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
    function validateUser($rolPermitido){
        session_start();
        $rol = isset($_SESSION['rol']) ? $_SESSION['rol'] : '';
        #SI NO EXISTE UNA SESION, SE ENVIARA AL LOGIN
        if(empty($rol)){
            session_destroy();
            if ($rolPermitido != "login"){
                header("Location: /login.php");
            }
        }
        //SE VERIFICA QUE EL ROL DEL USUARIO ACTUAL TENGA PERMISO DE ACCEDER A LA PANTALLA
        //DE LO CONTRARIO ES REDIRIGIDO AL MODULO QUE TIENE PERMISO
        if ($rolPermitido != "login"){
            if(strtolower($rol)!=strtolower($rolPermitido)){
                header("Location: /php/redireccion.php");
            }
        }
 
    }
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de abzerox
Val: 575
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Notice: Undefined index

Publicado por abzerox (157 intervenciones) el 31/10/2017 04:30:19
Hola, el mensaje indica que ya se han enviado las cabeceras HTTP, y como tal no puede hacerse modificaciones, prueba cambiar la linea 3 por la siguiente;

1
2
3
if (!isset($_SESSION)) {
    session_start();
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 729
Bronce
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Notice: Undefined index

Publicado por Gonzalo (615 intervenciones) el 01/11/2017 03:17:09
para activar las variables de session debes usar un Session_start() justo despues de <?php.

de otra forma la session esta cerrada y el $_SESSION no contiene nada.

intenta pasar el session start a la primera linea despues de <?php

y no dejes epacio antes del session start, debe estar justo al margen, mas o menos algo asi

<?php
session_start();


salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar