https://foro.gambas-es.org/viewtopic.php?f=3&t=3800
-----------------------------------
leonel
Viernes, 18 Abril 2014, 21:08

Hacer Un Sistema De Login Con Una Tabla De Base De Datos Sqlite3
-----------------------------------
Hola amigos del foro me gustaría que me ayudaran a encontrar información de como hacer un sistema de login de una base de datos en donde yo pueda cambiar mi contraseña cada vez que quiera.. Ejemplo: Una base de datos con 2 tablas una de "usuario y contraseña" y la otra de " cualquier cosa" Espero hacerme entender.. SALUDOS..


-----------------------------------
jsbsan
Sabado, 19 Abril 2014, 00:07

Re: Hacer Un Sistema De Login Con Una Tabla De Base De Datos Sqlite3
-----------------------------------
Leonel:

Basicamente se trata:

1) Pedir en un formulario el usuario (textboxUsuario) y su clave (textboxContraseña)
2) Haz una busqueda de registros donde  compruebas en la tabla "usuarios" (campos usuario y contraseña), exista un registro que coincida con el mismo usuario y tenga la misma contraseña.
Algo asi como:
    [code linenumbers=false syntax=gambas]  hresulta = conexion.Find("usuarios", "usuario=&1", TextBoxUsuario.Text)
      if hresulta["contraseña"]=TextboxContraseña.text then 
         print "OK, puedes continuar"
         'continua abriendo otro formulario
         .....
      else
          print "error: incorrecta contraseña o usuario"
      endif[/code]


3) Si existe ese registro, significa que esta correcto y que el programa puede continuar. Si no, se le dice que la contraseña o el usuario esta mál escrito.
4) Para cambiar tu contraseña, seria modificar (editas) el registro que tenga como usuario a ti.


-----------------------------------
jguardon
Sabado, 19 Abril 2014, 19:20

Re: Hacer Un Sistema De Login Con Una Tabla De Base De Datos Sqlite3
-----------------------------------
Para que el sistema sea mínimamente seguro, hay que cifrar las contraseñas, eso es evidente. Yo añadiría el cifrado de la contraseña con md5 o similar. El secreto está en comparar tanto el campo del nombre de usuario como el hash de la contraseña contra la base de datos. 


Saludos


