PHP - Validar login

   
Vista:

Validar login

Publicado por Pablo (39 intervenciones) el 22/02/2014 19:18:37
Hola amigos de foro: estuve bastante tiempo hasta poder lograr llenar un database de mysql, después de tantos intentos y mucha ayuda de ustedes lo logre. Ahora mi problema es que intentó entrar con mis credenciales del database y me da siempre "Login incorrecto"

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
// Configura los datos de tu cuenta
$dbhost='xxxxx';
$dbusername='xxxxx';
$dbuserpass='xxxxx';
$dbname='xxxxx';
session_start();
// Conectar a la base de datos
mysql_connect ($dbhost, $dbusername, $dbuserpass);
mysql_select_db($dbname) or die('Cannot select database');
if ($_POST['email']) {
//Comprobacion del envio del nombre de usuario y password
$username=$_POST['email'];
$password=$_POST['password'];
if ($password==NULL) {
echo "La password no fue enviada";
}else{
$query = "mysql_query(SELECT pass, email FROM utente WHERE pass = '$username') or die(mysql_error())";
$data = "mysql_fetch_array('$query')";
if($data['password']!=$password) {
echo "Login incorrecto";
}else{
$query = "mysql_query(SELECT pass, email FROM utente WHERE email = '$username') or die(mysql_error())";
$row = "mysql_fetch_array('$query')";
$_SESSION["s_username"] = $row['username'];
echo "Has sido logueado correctamente ".$_SESSION['s_username']." y puedes acceder al index.php.";
}
}
}
?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Validar login

Publicado por xve (5512 intervenciones) el 23/02/2014 09:32:01
Hola Pablo, pero... estas comparando un campo de la base de datos que no has seleccionado en el selec, o en vez de password es pass segun tu select

Prueba así:
1
if($data['pass']!=$password) {

Creo que tienes un pequeño problema de comillas en tus códigos...
Esto no es correcto:
1
"mysql_query(SELECT pass, email FROM utente WHERE pass = '$username') or die(mysql_error())";
Tendría que ser así:
1
mysql_query("SELECT pass, email FROM utente WHERE pass = '$username'") or die(mysql_error());

Te recomiendo que revises la documentación...

En tu select, estas comparando pass con $username... no se si es del todo correcto!!!

Espero que te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Validar login

Publicado por pablo (39 intervenciones) el 23/02/2014 13:03:36
Gracias xve, si en realidad los fallos conceptuales son lógicos por ejem pass no lo debo comparar con $username y otras cosas entre comillas y el pass me diste una gran mano porque no me había dado cuenta. Veamos sí logro hacerlo funcionar. Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar