Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/06/2013, 02:56
aaaaggggrrrr
 
Fecha de Ingreso: junio-2013
Ubicación: Barcelona
Mensajes: 2
Antigüedad: 10 años, 10 meses
Puntos: 0
Problema al redireccionar con cabeceras

Hola, acabo de hacer un registro de usuarios y el problema es que cuando uno se registra y activa la cuenta por email el estado de usuario es 2, y si completa unos datos pasa a ser 1, pero cuando entra al sistema quiero que si su estado es 2, vaya siempre a la pagina de completar los datos y si es 1 vaya a la pagina de inicio.

He probado con bucles, condicionales y no sale, no se el porque falla al redireccionar, os enseño una muestra:

Código PHP:
//FUNCION COMPROBAR ESTADO USUARIO ACTIVO

function fn_ComprobarUsuarioActivo($EstadoUsuario)
{

switch (
$EstadoUsuario) {
    case 
1:
        
header("location: noticias.php");
        exit;
        break;
    case 
2:
        
header("location: usuario_datos.php");
        exit;
        break;
    default:
       
header("location: index.php");
        exit;
}
    
}

//otra que e probado:

function fn_ComprobarUsuarioActivo()
{
    if (isset(
$_SESSION['username'])) {
    if(
fn_ComprobarEstadoUsuario($_SESSION['username'])!=1) {
        
$insertGoTo "usuario_datos.php";
        
header(sprintf("Location: %s"$insertGoTo));
    }
        
    } else {
        
        
$insertGoTo "noticias.php";
        
header(sprintf("Location: %s"$insertGoTo));
            
        }
    
        

La funcion fn_ComprobarEstadoUsuario te saca una consulta de la bbdd del estado actual del usuario que esta conectado, si es 1 o 2.

Que es lo que fallo?

Me recomendais este metodo, digamos esta manera de hacerlo, o cuala seria mejor?
Un saludo y muchas gracias!