1. ¿Buscando un Banco para abrir tu primera cuenta de ahorros? Revisa nuestro comparativo de cuentas cero mantenimiento haciendo clic aquí.
    Ocultar anuncio

Evitar varios usuarios con el mismo login

Publicado en 'Webmasters' por richilo, 30 Ago 2008.





  1. richilo

    richilo Miembro nuevo

    Registro:
    7 Ago 2008
    Mensajes:
    41
    Likes:
    0




    Olas gente!!! ahora q ya se como crear un sistema de autentificacion de usuarios con base de datos (php y MySQL) lo que quiero saber ahora es como podria saber si es q entran a mi pagina privada dos usuarios usando un mismo login y password, por ejemplo le doy un login y pass a una persona, y esa persona le da este login y pass a otra y asi entran sin q yo me percate de eso.... como puedo hacer para saber si es q hacen eso...???
     


  2. Yaraher

    Yaraher Miembro maestro

    Registro:
    26 Mar 2007
    Mensajes:
    313
    Likes:
    2
    Puedes grabar en la BD la información de sesión que tiene cada autenticación, sobretodo IP, hora y fecha y según eso comparar.

    Todos esos datos te llegan en el request inicial. Supongo que PHP debe tener algún objeto REQUEST del cual obtenerlos.

    De ahí, cómo y cuándo apliques tu lógica, depende de los requerimientos del proyecto.

    ¡Suerte!
     
  3. MijT

    MijT Miembro de bronce

    Registro:
    12 Oct 2006
    Mensajes:
    1,106
    Likes:
    63
    Partiendo de lo que comentó Yaraher, algo simple que podrías hacer es almacenar en una tabla las sesiones iniciadas (nick, clave, ip), luego cuando un usuario haga login en tu sistema haces una consulta a dicha tabla para ver si esa sesión ya ha sido iniciada con anterioridad y sigue activa, si es así pues le retornas un mensaje diciéndole que dicha sección ya está activa, de lo contrario haces la consulta a la tabla que almacena los datos de los usuarios y compruebas los datos para permitir/evitar su acceso.

    La verdad no es muy complicado, si tienes alguna duda nos la haces saber :)

    Saludos.
     
  4. richilo

    richilo Miembro nuevo

    Registro:
    7 Ago 2008
    Mensajes:
    41
    Likes:
    0
    Claro tiene razon... masters gracias pero quisiera q me agregena mi mail porfa para q me expliquen con calma si noes mucha molestia... o dejenme sus mail yo les agreo porfa brothers es urgente... thank!! mi mail es ciber_x63@ hotmail.com
     
  5. MijT

    MijT Miembro de bronce

    Registro:
    12 Oct 2006
    Mensajes:
    1,106
    Likes:
    63
    Cualquier duda que tengas no dudes en ponerla aquí y con gusto te echaré una mano en lo que esté a mi alcance :)
     
  6. richilo

    richilo Miembro nuevo

    Registro:
    7 Ago 2008
    Mensajes:
    41
    Likes:
    0
    porfa me puedes hacer un tuto... mira los archivos php y mysql q use para hacer mi sitema de autentificacion y me funciono de 10... chevere!!! son estos q adjunto..... chequealos porfa para q veas como puedo hacer lo q te dije anteriormente... osea saber quien entra en linea.. o saber si es q entran en linea desde diferentes IP o usando un mismo login y password...
     
  7. Yaraher

    Yaraher Miembro maestro

    Registro:
    26 Mar 2007
    Mensajes:
    313
    Likes:
    2
    richilo, tanto MijT como yo te hemos dado alcances de cómo lograrlo.
    Básicamente, tienes que saber lo siguiente:

    1) Manejo de sesiones. Es algo bastante trivial, un objeto sesión es básicamente un contenedor que reside en el servidor y donde puedes almacenar información. Se crea cada vez que realizas una consulta. Debes averiguar qué clases/métodos se usan en PHP para accederla. No uso mucho de éste lenguaje, pero me parece que la sintaxis es similar a obtener un resultado de una consulta POST.

    2) Grabar y leer información de una BD. Ya lo sabes o al menos ya lo has hecho basándote en los tutoriales que utilizaste para armas tu sistema de autenticación.

    3) Conocer el flujo que debes tener en tu capa controladora. Acá depende mucho de la lógica de tu aplicación. Yo haría algo así: cuando alguien inicia la acción de login, iría a la BD con al menos los siguientes datos: IP y nombre de usuario.

    Si existe algún registro en una tabla sesiones con esos datos, se retorna un error indicando que ya hay una sesión activa y evita el inicio de sesión nuevo. Si no, grabas ese registro en la tabla y permites el logueo.

    Cuando decide terminar su sesión, eliminas el registro.

    ¡Saludos!