Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/09/2014, 09:52
ukioan
 
Fecha de Ingreso: julio-2014
Mensajes: 2
Antigüedad: 9 años, 9 meses
Puntos: 0
Exclamación Problema con login session_start

Buenos Días

estoy haciendo un login de usuario y contrseña con encriptacion de contraseña, tome de ejemplo uno que encontre en la web, pero el problema es que no entra al primer intento asi los datos sean correctos el usuario debe registrar sus datos 2 veces para que pueda accesar a la pagina le dejo los codigos de antemano graciasssssssss


Valida Los usuarios:

Código PHP:
Ver original
  1. <?php
  2.     //conectar BD
  3.     include("conectar_bd.php");  
  4.     conectar_bd();
  5.    
  6.     $usr = $_POST['usuario'];
  7.     $pw = $_POST['password'];
  8.     //Obtengo la version encriptada del password
  9.     $pw_enc = md5($pw);
  10.    
  11.     $sql = "SELECT id_usuario FROM tbl_users
  12.             INNER JOIN ctg_tiposusuario
  13.             ON tbl_users.id_TipoUsuario = ctg_tiposusuario.id_TipoUsuario
  14.             WHERE tx_username = '".$usr."'
  15.             AND tx_password = '".$pw_enc."' "; 
  16.     $result     =mysql_query($sql,$conexio);
  17.  
  18.     $uid = "";
  19.    
  20.     //Si existe al menos una fila
  21.     if( $fila = mysql_fetch_array($result) )
  22.     {      
  23.         //Obtener el Id del usuario en la BD       
  24.         $uid = $fila['id_usuario'];
  25.         //Iniciar una sesion de PHP
  26.         @session_start();
  27.         //Crear una variable para indicar que se ha autenticado
  28.         $_SESSION['autenticado']    = 'SI';
  29.         //Crear una variable para guardar el ID del usuario para tenerlo siempre disponible
  30.         $_SESSION['uid']   = $uid;
  31.         //CODIGO DE SESION
  32.        
  33.         //Crear un formulario para redireccionar al usuario y enviar oculto su Id
  34. ?>
  35.         <form name="formulario" method="post" action="Sise/administracion.php">
  36.             <input type="hidden" name="idUsr" value='<?php echo $uid ?>' />
  37.         </form>
  38. <?php
  39.     }
  40.     else {
  41.         //En caso de que no exista una fila...
  42.         //..Crear un formulario para redireccionar al usuario a la pagina de login
  43.         //enviandole un codigo de error
  44. ?>
  45.         <form name="formulario" method="post" action="index.php">
  46.             <input type="hidden" name="msg_error" value="1">
  47.         </form>
  48. <?php
  49.     }
  50. ?>
  51.                    
  52. <script type="text/javascript">
  53.     //Redireccionar con el formulario creado
  54.     document.formulario.submit();
  55. </script>

session_star que va en cada pagina:

Código PHP:
Ver original
  1. <?php
  2.     //conectar BD
  3.     include("conectar_bd.php");  
  4.     conectar_bd();
  5.    
  6.     $usr = $_POST['usuario'];
  7.     $pw = $_POST['password'];
  8.     //Obtengo la version encriptada del password
  9.     $pw_enc = md5($pw);
  10.    
  11.     $sql = "SELECT id_usuario FROM tbl_users
  12.             INNER JOIN ctg_tiposusuario
  13.             ON tbl_users.id_TipoUsuario = ctg_tiposusuario.id_TipoUsuario
  14.             WHERE tx_username = '".$usr."'
  15.             AND tx_password = '".$pw_enc."' "; 
  16.     $result     =mysql_query($sql,$conexio);
  17.  
  18.     $uid = "";
  19.    
  20.     //Si existe al menos una fila
  21.     if( $fila = mysql_fetch_array($result) )
  22.     {      
  23.         //Obtener el Id del usuario en la BD       
  24.         $uid = $fila['id_usuario'];
  25.         //Iniciar una sesion de PHP
  26.         @session_start();
  27.         //Crear una variable para indicar que se ha autenticado
  28.         $_SESSION['autenticado']    = 'SI';
  29.         //Crear una variable para guardar el ID del usuario para tenerlo siempre disponible
  30.         $_SESSION['uid']   = $uid;
  31.         //CODIGO DE SESION
  32.        
  33.         //Crear un formulario para redireccionar al usuario y enviar oculto su Id
  34. ?>
  35.         <form name="formulario" method="post" action="Sise/administracion.php">
  36.             <input type="hidden" name="idUsr" value='<?php echo $uid ?>' />
  37.         </form>
  38. <?php
  39.     }
  40.     else {
  41.         //En caso de que no exista una fila...
  42.         //..Crear un formulario para redireccionar al usuario a la pagina de login
  43.         //enviandole un codigo de error
  44. ?>
  45.         <form name="formulario" method="post" action="index.php">
  46.             <input type="hidden" name="msg_error" value="1">
  47.         </form>
  48. <?php
  49.     }
  50. ?>
  51.                    
  52. <script type="text/javascript">
  53.     //Redireccionar con el formulario creado
  54.     document.formulario.submit();
  55. </script>

Muchas Graciassssssss

Última edición por Triby; 18/09/2014 a las 18:44 Razón: Código en highlight