Foros del Web » Programando para Internet » PHP »

Problema con un if

Estas en el tema de Problema con un if en el foro de PHP en Foros del Web. Miren intento hacer que si el usuario está loggeado me redireccione a una pagina: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original if ( isset ( $_COOKIE ...
  #1 (permalink)  
Antiguo 05/10/2011, 12:29
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Exclamación Problema con un if

Miren intento hacer que si el usuario está loggeado me redireccione a una pagina:

Código PHP:
Ver original
  1. if (isset($_COOKIE['loggedin'])){
  2.     echo "header ('Location: http://www.minimonigotes.com/carpetapremium/members/inicio.php')";
  3. }

Pero en lugar de redireccionar lo que hace es mostrar el texto: header...

También he probado otras cosas sin éxito, ¿alguien tiene idea de cómo hacerlo? Gracias.
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #2 (permalink)  
Antiguo 05/10/2011, 12:35
Avatar de Carlangueitor
Moderador ლ(ಠ益ಠლ)
 
Fecha de Ingreso: marzo-2008
Ubicación: México
Mensajes: 10.037
Antigüedad: 16 años, 1 mes
Puntos: 1329
Respuesta: Problema con un if

Pues te pasa eso por que eso es lo que has escrito, echo es para imprimir, debería ser así:
Código PHP:
Ver original
  1. if (isset($_COOKIE['loggedin'])){
  2.     header ('Location: http://www.minimonigotes.com/carpetapremium/members/inicio.php');
  3. }

Bueno probablemente me equivoque, a ver si alguien con más experiencia te ayuda.

Saludos
__________________
Grupo Telegram Docker en Español
  #3 (permalink)  
Antiguo 05/10/2011, 12:35
Avatar de CesarHC  
Fecha de Ingreso: junio-2011
Ubicación: localhost
Mensajes: 566
Antigüedad: 12 años, 10 meses
Puntos: 56
Respuesta: Problema con un if

Estee va sin comillas.

Código PHP:
Ver original
  1. if (isset($_COOKIE['loggedin'])){
  2.  
  3.           echo header ('Location: http://www.minimonigotes.com/carpetapremium/members/inicio.php');
  4.    
  5.       }
__________________
Solo la práctica no te traicionara ¡¡¡¡¡¡

Seguir el camino tu debes PHP The Right Way.
  #4 (permalink)  
Antiguo 05/10/2011, 12:36
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Problema con un if

Aqui puedes ver como se usa el header en php
  #5 (permalink)  
Antiguo 05/10/2011, 12:59
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: Problema con un if

Siento decirlo pero ninguno resolvió el problema, simplemente no redirecciona...
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #6 (permalink)  
Antiguo 05/10/2011, 13:00
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Problema con un if

Entonces tu problema viene de aquí

Código PHP:
Ver original
  1. if (isset($_COOKIE['loggedin'])){
Verifica el contenido de $_COOKIE con un print_r o coloca tu código completo para ayudarte mejor.

saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #7 (permalink)  
Antiguo 05/10/2011, 14:07
 
Fecha de Ingreso: julio-2010
Mensajes: 275
Antigüedad: 13 años, 9 meses
Puntos: 21
Respuesta: Problema con un if

si cambias la condición a if ($_COOKIE['loggedin']=='') ???
  #8 (permalink)  
Antiguo 06/10/2011, 08:52
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: Problema con un if

Si escribo:

Código PHP:
echo "Hola"
en vez de lo que yo quiero si aparece "hola" por lo tanto el problema no esté en la condición en sí.

Mi cod es el siguiente (completo):

Código PHP:
<?php
include("config.php");
$username $_COOKIE['loggedin'];
if (isset(
$_COOKIE['loggedin'])){
    echo 
header('Location: http://www.minimonigotes.com/carpetapremium/members/inicio.php');
}else{
    echo 
"<form action='entrar2.php' method='post' onsubmit='return validate()'>
              <table width='200' border='0'>
                <tr>
                  <td>Usuario:</td>
                  <td><input type='text' name='username' size='20' /></td>
                </tr>
                <tr>
                  <td>Contraseña:</td>
                  <td><input type='password' name='password' size='20' /></td>
                </tr>
                <tr>
                  <td colspan='2'><input type='submit' value='Acceso' />
                    | <a href='registro.html'>Registrarse ahora</a></td>
                </tr>
              </table>
              <p><a href='reenviar.html'>¿Olvidó su contraseña?</a><br />
              </p>
            </form>"
;
}
?>
Si estoy loggeado aparece el formulario y si no lo estoy no aparece nada.
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #9 (permalink)  
Antiguo 06/10/2011, 09:12
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 8 meses
Puntos: 194
Respuesta: Problema con un if

el echo esta de mas, mira el ejemplo de Carlangueitor

Usa

Código PHP:
header ('Location: http://www.minimonigotes.com/carpetapremium/members/inicio.php'); 
SIN PONERLE ECHO ADELANTE
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #10 (permalink)  
Antiguo 06/10/2011, 11:50
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: Problema con un if

Creéme también lo probé y no va
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #11 (permalink)  
Antiguo 06/10/2011, 11:55
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 8 meses
Puntos: 194
Respuesta: Problema con un if

Cita:
Iniciado por super_rayo Ver Mensaje
Creéme también lo probé y no va
Tienes en cuenta que para hacer un header es necesario que no se haya mostrado nada en pantalla anteriormente?
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #12 (permalink)  
Antiguo 06/10/2011, 12:04
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Problema con un if

si pegas esto en un php?

Código PHP:
Ver original
  1. <?php
  2. $redir = TRUE;
  3.  
  4. if(isset($redir)){
  5.     header('Location: http://google.com');
  6. }else{
  7.     echo 'no existe redir';
  8. }
  9. ?>

funciona?
  #13 (permalink)  
Antiguo 06/10/2011, 12:33
Avatar de gustavopino  
Fecha de Ingreso: septiembre-2011
Ubicación: venezuela
Mensajes: 152
Antigüedad: 12 años, 7 meses
Puntos: 29
Respuesta: Problema con un if

Amigo pon esto en tu codigo:
Código PHP:
Ver original
  1. // esto antes de todo el codigo
  2. /*
  3. *
  4. codigo
  5. *
  6. */
  7. // al final del codigo con esto resolvia el problema
Espero que te sirva.
__________________
Visita a Publiventa donde compras y vendes de todo
  #14 (permalink)  
Antiguo 06/10/2011, 13:16
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: Problema con un if

Cita:
Iniciado por h2swider Ver Mensaje
Tienes en cuenta que para hacer un header es necesario que no se haya mostrado nada en pantalla anteriormente?
¿Entonces como tendría que escribir el código para que se cargue antes el php?
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #15 (permalink)  
Antiguo 06/10/2011, 13:30
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: Problema con un if

Me valdría algo como esto?

Código PHP:
<html>
<head>
// title y demas
</head>
<body>
<?php

$formulario 
FALSE;

include(
"config.php");
$username $_COOKIE['loggedin'];
if (isset(
$_COOKIE['loggedin'])){
    
header("Location: http://www.minimonigotes.com/carpetapremium/members/inicio.php");
}else{
    
$formulario TRUE;
}
?>
// Resto del codigo

<?php

if ($formulario == TRUE){
    echo 
"<form action='entrar2.php' method='post' onsubmit='return validate()'>
              <table width='200' border='0'>
                <tr>
                  <td>Usuario:</td>
                  <td><input type='text' name='username' size='20' /></td>
                </tr>
                <tr>
                  <td>Contraseña:</td>
                  <td><input type='password' name='password' size='20' /></td>
                </tr>
                <tr>
                  <td colspan='2'><input type='submit' value='Acceso' />
                    | <a href='registro.html'>Registrarse ahora</a></td>
                </tr>
              </table>
              <p><a href='reenviar.html'>¿Olvidó su contraseña?</a><br />
              </p>
            </form>"
;
}
?>
</body>
</html>
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #16 (permalink)  
Antiguo 06/10/2011, 13:38
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 8 meses
Puntos: 194
Respuesta: Problema con un if

No, no te vale.

pon esto antes de tu etiqueta html, y es mas, tambien cambiaria el config de ser posible para asegurarme.

Código PHP:
Ver original
  1. <?php
  2.  
  3. $formulario = FALSE;
  4.  
  5.  
  6. $username = $_COOKIE['loggedin'];
  7. if (isset($_COOKIE['loggedin'])){
  8.     header("Location: http://www.minimonigotes.com/carpetapremium/members/inicio.php");
  9.     exit;
  10. }else{
  11.     $formulario = TRUE;
  12. }
  13. include("config.php");
  14. ?>
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #17 (permalink)  
Antiguo 06/10/2011, 13:49
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: Problema con un if

¡Funcionó!

Muchas gracias a todos por su ayuda!
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!

Etiquetas: redireccionar
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 11:28.