elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Ayuda con la validacion de un login con privilegios de usuario
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con la validacion de un login con privilegios de usuario  (Leído 2,593 veces)
jaoc6

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Ayuda con la validacion de un login con privilegios de usuario
« en: 21 Marzo 2018, 22:05 pm »

Hola gente! Quiero hacer un login con privilegios de usuarios, tengo una base de datos llamada login, con una tabla "cuentas" con los campos "usuario" , "contraseña" y "tipo_cuenta". En los formularios para iniciar sesion solo tengo 2 inputs para el usuario y la contraseña. Las contraseñas de las cuentas que he creado las encripte con password_hash() y el tipo de usuario los ingrese con un select (Usuario y administrador).

Este es el archivo que procesa los datos enviados por el formulario:
Código:
<?php
  require("config.php");


  try {
  $usuario=htmlentities(addslashes($_POST['user']));
  $password=htmlentities(addslashes($_POST['pass']));
  $contador=0;

  $conexion = new PDO ("mysql:host=$host; dbname=$dblogin", "$dbusuario", "$contrasenadb");
  $conexion->setAttribute (PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

  $sql= "SELECT * FROM cuentas where usuario= :user";
  $resultado=$conexion->prepare($sql);
  $resultado->execute(array(":user"=>$usuario));

  while ($registro=$resultado->fetch(PDO::FETCH_ASSOC)) {

    if (password_verify($password, $registro['contrasena'])) {
      $contador++;
    }
  }
  if ($contador>0) {

    session_start();
$_SESSION["usuario"]=$usuario;

header("location:administrador.php");

  }else {
    header("location:index.php");
  }

  } catch (Exception $e) {
    die(" Error: " . $e->getMessage());
  }

El inicio de sesion esta bien, procesa la contraseña cifrada pero me gustaria poder que inicie sesion y lo direccionara a una pagina diferente dependiendo del tipo_cuenta que tenga el usuario en la base de datos. He probado diferentes if else dentro del "if(contador>0)" de la linea 23 pero nada me resulta.
Quiero aclarar que soy nuevo en esto y me he guiado de este canal : https://www.youtube.com/watch?v=XfOxyQcbawc&list=PLU8oAlHdN5BkinrODGXToK9oPAlnJxmW_&index=69

Espero haberme explicado bien, sería de mucha ayuda sus sugerencias.Gracias


En línea

#Aitor

Desconectado Desconectado

Mensajes: 173



Ver Perfil
Re: Ayuda con la validacion de un login con privilegios de usuario
« Respuesta #1 en: 23 Marzo 2018, 06:32 am »

No sé que tipo será Tipo_cuentas, string, entero etc... Pero yo probaría a traer el valor de tipo_cuentas dónde usuario fuera usuario, dentro de un switch, y dependiendo de lo que devolviese haría una cosa u otra, tal que así:

Código
  1. <?php
  2.  
  3. $resultado = $conexion->query("SELECT tipo_cuenta FROM cuentas WHERE usuario= '$user'")->fetchColumn();
  4.  
  5. switch ($resultado) {
  6.  case 'admin':
  7.    header("Location:Admin.php");
  8.    break;
  9.  
  10.  case 'moderador':
  11.    header("Location:Moderador.php");
  12.    break;
  13.  
  14.  default:
  15.    header("Location:Index.php");
  16.    break;
  17. }
  18.  
  19. ?>
  20.  


« Última modificación: 23 Marzo 2018, 06:35 am por #Aitor » En línea

Mi algoritmo en PHP (estupideces y más).
Código
  1. while($Se_feliz){
  2.  Piensa_un_OBJETIVO(); // Sin excusas!
  3.  if($Tienes_un_objetivo){
  4.    Suspira(); // Sé paciente.
  5.    if($Consigues_el_objetivo){ echo "¡Felicidades #Aitor!";return;
  6.      //RETURN; ¿O volvemos a empezar?
  7.    }else{
  8.      Inténtalo_de_nuevo();
  9.    }
  10.  }
  11. }
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
validacion de usuario no me funciona!!!
PHP
Mr.Chispa 3 1,776 Último mensaje 9 Diciembre 2006, 19:37 pm
por bruj0
privilegios de usuario
GNU/Linux
biznaka 2 2,086 Último mensaje 29 Marzo 2011, 18:23 pm
por biznaka
[POO]Sistema de usuario y privilegios
PHP
jperezmonge 5 4,705 Último mensaje 27 Abril 2012, 18:50 pm
por raul_samp
Sistema de autenticación con NodeJS / Validación de usuario
Desarrollo Web
Ali Baba 3 2,343 Último mensaje 21 Octubre 2016, 23:51 pm
por Ali Baba
crear un usuario que tenga privilegios admin y otro usuario php mysql
PHP
centella24 3 5,110 Último mensaje 25 Junio 2017, 15:57 pm
por Rambar
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines