Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] redireccionar pagina login

Estas en el tema de redireccionar pagina login en el foro de PHP en Foros del Web. hola, tengo una pagina en la que en el centro esta un recuadro para iniciar sesión, para eso esta dentro de un div, el problema ...
  #1 (permalink)  
Antiguo 08/05/2014, 10:52
 
Fecha de Ingreso: abril-2014
Mensajes: 141
Antigüedad: 10 años
Puntos: 1
redireccionar pagina login

hola, tengo una pagina en la que en el centro esta un recuadro para iniciar sesión, para eso esta dentro de un div, el problema es que al ingresar usuario y contraseña y al darle al login me vuelve a cargar la pagina y no me redirecciona a la pagina que quiero.
  #2 (permalink)  
Antiguo 08/05/2014, 11:03
Avatar de MaNuX0218  
Fecha de Ingreso: marzo-2014
Mensajes: 787
Antigüedad: 10 años, 1 mes
Puntos: 67
Respuesta: redireccionar pagina login

Dentro de donde validas los datos, si todo es OK con hacer un:

Código PHP:
Ver original
  1. header('Location: http://dominio.com/pagina_logeado.php');

También puedes crear la redirección con javascript, html, etc...

Saludos.
  #3 (permalink)  
Antiguo 08/05/2014, 11:04
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: redireccionar pagina login

Y ... como haces la redireccion ? por que no colocas el formulario <form.... aqui ? que especificas en "action" ? o si haces la redireccion en algun punto con header() luego recuerda hacer un exit();

Código PHP:
Ver original
  1. <?php
  2. header("Location: http://www.example.com/"); /* Redirección del navegador */
  3.  
  4. exit();
  5. // sino sigue
__________________
Salu2!
  #4 (permalink)  
Antiguo 08/05/2014, 11:19
 
Fecha de Ingreso: abril-2014
Mensajes: 141
Antigüedad: 10 años
Puntos: 1
Respuesta: redireccionar pagina login

tengo esto:

Código PHP:
Ver original
  1. <?php
  2. $soyadmin = "si";
  3. session_register("soyadmin");
  4. include_once "conecta_sesion.php";
  5.  
  6. function verificar_login($user,$password,&$result) {
  7.     $sql = "SELECT * FROM login WHERE usuario = '$user' and password = '$password'";
  8.     $rec = mysql_query($sql);
  9.     $count = 0;
  10.  
  11.     while($row = mysql_fetch_object($rec))
  12.     {
  13.         $count++;
  14.         $result = $row;
  15.     }
  16.  
  17.     if($count == 1)
  18.     {
  19.         return 1;
  20.     }
  21.  
  22.     else
  23.     {
  24.         return 0;
  25.     }
  26. }
  27.  
  28. if(!isset($_SESSION['userid']))
  29. {
  30.     if(isset($_POST['login']))
  31.     {
  32.         if(verificar_login($_POST['user'],$_POST['password'],$result) == 1)
  33.         {
  34.             $_SESSION['id_usuario'] = $result->idusuario;
  35.             header("location:dirarbol2.php");
  36.  
  37.  
  38.            
  39.            
  40.         }
  41.         else
  42.         {
  43.             echo '<div class="error">Usuario o Contraseña incorrecto, intente nuevamente.</div>';
  44.         }
  45.     }
  46. ?>
  47.  
  48. <style type="text/css">
  49. *{
  50.     font-size: 14px;
  51. }
  52. body{
  53. background:#aaa;
  54. }
  55. form.login {
  56.     background: none repeat scroll 0 0 #F1F1F1;
  57.     border: 1px solid #DDDDDD;
  58.     font-family: sans-serif;
  59.     margin: 0 auto;
  60.     padding: 20px;
  61.     width: 278px;
  62.     box-shadow:0px 0px 20px black;
  63.     border-radius:10px;
  64. }
  65. form.login div {
  66.     margin-bottom: 15px;
  67.     overflow: hidden;
  68. }
  69. form.login div label {
  70.     display: block;
  71.     float: left;
  72.     line-height: 25px;
  73. }
  74. form.login div input[type="text"], form.login div input[type="password"] {
  75.     border: 1px solid #DCDCDC;
  76.     float: right;
  77.     padding: 4px;
  78. }
  79. form.login div input[type="submit"] {
  80.     background: none repeat scroll 0 0 #DEDEDE;
  81.     border: 1px solid #C6C6C6;
  82.     float: right;
  83.     font-weight: bold;
  84.     padding: 4px 20px;
  85. }
  86. .error{
  87.     color: red;
  88.     font-weight: bold;
  89.     margin: 10px;
  90.     text-align: center;
  91. }
  92. </style>
  93.  
  94. <form action="" method="post" class="login">
  95.     <div><label>Username</label><input name="user" type="text" ></div>
  96.     <div><label>Password</label><input name="password" type="text"></div>
  97.     <div><input name="login" type="submit" value="login"></div>
  98. </form>
  99. <?php
  100. } else {
  101.     echo 'Su usuario ingreso correctamente.';
  102.     echo '<a href="logout.php">Logout</a>';
  103. }
  104. ?>
  #5 (permalink)  
Antiguo 08/05/2014, 11:24
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: redireccionar pagina login

Pues yo revisaria esas condiciones porque para redireccionar deben cumplirse segun como has puesto esos IFs:

(NOT isset($_SESSION['userid']))) AND (isset($_POST['login'])) AND (verificar_login($_POST['user'],$_POST['password'],$result) == 1)

Seguro deben cumplirse esas condiciones simultaneamente ?
__________________
Salu2!
  #6 (permalink)  
Antiguo 08/05/2014, 11:27
 
Fecha de Ingreso: abril-2013
Mensajes: 61
Antigüedad: 11 años
Puntos: 4
Respuesta: redireccionar pagina login

en este fichero, que hay

include_once "conecta_sesion.php";

Copio del manual de php:
"Recuerde que header() debe ser llamado antes de mostrar nada por pantalla, etiquetas HTML, líneas en blanco desde un fichero o desde PHP. Es un error muy común leer código con funciones como include o require, u otro tipo de funciones de acceso de ficheros que incluyen espacios o líneas en blanco que se muestran antes de llamar a la función header(). Sucede el mismo problema cuando se utiliza un solo fichero PHP/HTML. "
  #7 (permalink)  
Antiguo 08/05/2014, 11:46
 
Fecha de Ingreso: abril-2014
Mensajes: 141
Antigüedad: 10 años
Puntos: 1
Respuesta: redireccionar pagina login

apenas empiezo en php y no entiendo mucho, el código yo no lo escribí completamente
  #8 (permalink)  
Antiguo 08/05/2014, 12:14
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: redireccionar pagina login

Cita:
Iniciado por portal47 Ver Mensaje
apenas empiezo en php y no entiendo mucho, el código yo no lo escribí completamente
Si esperas una solucion magica, yo iria marcando el tema como SOLUCIONADO
__________________
Salu2!
  #9 (permalink)  
Antiguo 08/05/2014, 13:40
 
Fecha de Ingreso: abril-2014
Mensajes: 141
Antigüedad: 10 años
Puntos: 1
Respuesta: redireccionar pagina login

ya me salio, lo resolvi poniendo solo el formulario:

Código PHP:
Ver original
  1. <form action="sesion.php" method="post" class="login">
  2.     <div><label>Username</label><input name="user" type="text" ></div>
  3.     <div><label>Password</label><input name="password" type="password"></div>
  4.     <div><input name="login" type="submit" value="login"></div>
  5. </form>

y en sesion.php

Código PHP:
Ver original
  1. <?php
  2. $soyadmin = "si";
  3. session_register("soyadmin");
  4. include_once "conecta_sesion.php";
  5.  
  6. function verificar_login($user,$password,&$result) {
  7.     $sql = "SELECT * FROM login WHERE usuario = '$user' and password = '$password'";
  8.     $rec = mysql_query($sql);
  9.     $count = 0;
  10.  
  11.     while($row = mysql_fetch_object($rec))
  12.     {
  13.         $count++;
  14.         $result = $row;
  15.     }
  16.  
  17.     if($count == 1)
  18.     {
  19.         return 1;
  20.     }
  21.  
  22.     else
  23.     {
  24.         return 0;
  25.     }
  26. }
  27.  
  28. if(!isset($_SESSION['userid']))
  29. {
  30.     if(isset($_POST['login']))
  31.     {
  32.         if(verificar_login($_POST['user'],$_POST['password'],$result) == 1)
  33.         {
  34.             $_SESSION['id_usuario'] = $result->idusuario;
  35.             header('location: dirarbol2.php?');
  36.  
  37.  
  38.            
  39.            
  40.         }
  41.         else
  42.         {
  43.             echo '<div class="error">Usuario o Contraseña incorrecto, intente nuevamente.</div>';
  44.             header('location: directorio_bd.php');
  45.         }
  46.     }
  47. ?>
  48.  
  49. <?php
  50. } else {
  51.     echo 'Su usuario ingreso correctamente.';
  52.     echo '<a href="logout.php">Logout</a>';
  53. }
  54. ?>

Etiquetas: login, 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 20:51.