Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Reconocimiento de usuarios de base de datos php

Estas en el tema de Reconocimiento de usuarios de base de datos php en el foro de PHP en Foros del Web. Hola buen dia, pues mi duda es esa, ya tengo realizado mi codigo para que las personas se puedan registrar e ingresar, el problema es ...
  #1 (permalink)  
Antiguo 18/11/2012, 01:40
 
Fecha de Ingreso: noviembre-2012
Ubicación: Puerto Vallarta
Mensajes: 16
Antigüedad: 11 años, 5 meses
Puntos: 0
Pregunta Reconocimiento de usuarios de base de datos php

Hola buen dia, pues mi duda es esa, ya tengo realizado mi codigo para que las personas se puedan registrar e ingresar, el problema es cuando quiero que se les quede su nombre en vez del "iniciar sesion" u "hola invitado", probe con este codigo, si alguien pudiera orientarme hacia donde enfocarme, se lo agradeceria sobremanera:
Cita:
Código PHP:
Ver original
  1. <?php
  2.  
  3.  
  4. mysql_connect("mysql16.000webhost.com","a4470942_user","givara1") or die(mysql_error());
  5. mysql_select_db("a4470942_alta" ) or die(mysql_error());
  6.  
  7. $result = mysql_query("SELECT password FROM usuarios
  8.      WHERE nick='$nickN'");
  9.  
  10.       $loginCorrecto = true;
  11.       $idUsuarioL = $row["idUsuario"];
  12.       $emailUsuarioL = $row["email"];
  13.       $nombreUsuarioL = $row["username"];
  14.  
  15.  
  16. if($loginCorrecto)
  17. {
  18. echo "Hola ".$nombreUsuarioL;
  19. }
  20. else
  21. {
  22. echo "Bienvenido visitante";
  23. }
  24. ?>
Lo unico que logro es que me salga "Hola", incluso cuando no se han logueado
  #2 (permalink)  
Antiguo 18/11/2012, 05:20
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años
Puntos: 33
Respuesta: Reconocimiento de usuarios de base de datos php

Hola,

Me gustaría ayudarte con este tema, pero primero deja que te haga una recomendación (y no lo tomes como un "sermón")

Cita:
NUNCA PONGAS DATOS COMPLETOS DE LOGIN A TU BASE DE DATOS
Esto es muy importante, ya que alguien con malas intenciones, ahora mismo podría desmontar tu base de datos, ya que tiene tus datos...

Yo por suerte no soy tan mala persona... te recomiendo que cambies los datos de login en tu hosting (000webhost, cierto? tengo algunos proyectos allí :-p) y que luego edites el post y borres los datos comprometedores (nombre de la base de datos, usuario, password).

Ahora si, voy con la ayuda:

Fíjate que haces

$loginCorrecto = true;

y más adelante

if($loginCorrecto)

Entonces, siempre va a entrar en ese if.

¿Cómo hacer que cambie dependiendo del login? Yo haría algo así

Código:
 - Recoges el count de usuarios que coincidan con ese nick (select count(nick) from usuarios...): count te retornará el número de registros que coinciden con ese nick.

- Si el count da 1 (hay un registro), $loginCorrecto es true. En caso contrario es false (es decir, si hay 0 o más de 1 - si Nick es una clave, no debería haber más de uno)

- Si $loginCorrecto es true, seleccionamos los datos necesarios para loguear (nick, password, etc), y seguimos la ejecución (aquí mostrarías el mensaje "hola, usuario")

- Si $loginCorrecto es false, mostramos el mensaje "Bienvenido, visitante".
Espero te sirva de ayuda, y recuerda cambiar los datos comprometedores...

Saludos!
  #3 (permalink)  
Antiguo 18/11/2012, 05:59
Avatar de feconto  
Fecha de Ingreso: noviembre-2012
Ubicación: En mi Mundo
Mensajes: 25
Antigüedad: 11 años, 5 meses
Puntos: 5
Respuesta: Reconocimiento de usuarios de base de datos php

yo creo que este codigo ta daria un ejemplo el que y por que

Código PHP:
Ver original
  1. session_start();//incia la session para trabajar con estas
  2.  
  3. $usuario = $_POST['usuario'];
  4.  
  5.  
  6. if(isset($_POST['enviar']))
  7. {
  8. $query1 = mysql_query("select username from usuarios where username='".$usuario."'");//utiliza haci por mas seguridad comillas dobles
  9. if(mysql_num_rows($query1) == 0)
  10. {
  11.     header("location:login.php?error=datos");//redirecciona por que no existe
  12. }
  13. else
  14. {
  15.     //el usuario existe ahora digamos que lo loggeamos
  16.     $row = mysql_fetch_object($query1);
  17.     $_SESSION['usuario'] = $row->username;
  18.     $_SESSION['id_usu'] = $row->id_usu;
  19.     $_SESSION['email'] = $row->email;
  20.  
  21.     header("location:index.php");
  22.  }
  23. }
  24.  
  25.  
  26. y si se logea lo redirige a otra pagia donde se le mostrara los datos
  27.  
  28. [HIGHLIGHT="PHP"]
  29. if($_SESSION['usuario'] == true)
  30. {
  31.     echo "Saludos Señor : $_SESSION['usuario']";
  32. }
if($_SESSION['usuario'] == true)
{
echo "Saludos Señor : $_SESSION['usuario']";
}

[/HIGHLIGHT]

Etiquetas: mysql, reconocimiento, sql, usuarios
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 15:11.