PHP - no valida cuando el password se repite

 
Vista:
sin imagen de perfil
Val: 557
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no valida cuando el password se repite

Publicado por aldo (1056 intervenciones) el 28/11/2015 03:29:43
hola tengo este codigo para registrar usuarios:
y debiera pasar por el mensaje:echo ' <script language="javascript">alert("Atencion, ya existe el mail designado para un usuario, verifique sus datos");</script> '; ; esto es cuando el password es igual;

esta pasando por este mensaje:

echo ' <script language="javascript">alert("Usuario registrado con éxito");</script> ';
si alguien pudiera ayudarme

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
error_reporting(E_ALL ^ E_WARNING ^ E_NOTICE);
	$realname=$_POST['realname'];
	$mail=$_POST['nick'];
	$pass= $_POST['pass'];
	$rpass=$_POST['rpass'];
 
    $connect = pg_connect("host=localhost port=5432 dbname=administra user=postgres password=movilnet");
	$checkemail=pg_query("SELECT * FROM usuarios WHERE email='$mail'");
 
 
	$check_mail=@pg_num_rows($checkemail);
 
		if($pass==$rpass){
			if($check_mail>0){
				echo ' <script language="javascript">alert("Atencion, ya existe el mail designado para un usuario, verifique sus datos");</script> ';
			}else{
 
				//require("connect_db.php");
				pg_query("INSERT INTO login VALUES('','$realname','$pass','$mail','')");
				//echo 'Se ha registrado con exito';
				echo ' <script language="javascript">alert("Usuario registrado con éxito");</script> ';
				pg_close($link);
			}
 
		}else{
			echo 'Las contraseñas son incorrectas';
		}
 
?>
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
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no valida cuando el password se repite

Publicado por xve (6935 intervenciones) el 28/11/2015 09:16:53
Hola Aldo, según veo, el problema lo tienes en el $check_mail, no en el $pass==$rpass, porque si que se da la coincidencia, no?
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
sin imagen de perfil
Val: 557
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no valida cuando el password se repite

Publicado por aldo (1056 intervenciones) el 29/11/2015 01:31:44
hola Xve, no entiendo exactamente, en cual linea del codigo me refieres?

en cual de estas?

1
2
3
4
$check_mail=@pg_num_rows($checkemail);
 
		if($pass==$rpass){
			if($check_mail>0){
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
sin imagen de perfil
Val: 557
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no valida cuando el password se repite

Publicado por aldo (1056 intervenciones) el 29/11/2015 02:53:51
Hola xve estoy bastante liado con esto, ahora se puede hacer esta pregunta asi:?

1
if($check_mail>0 && $pass==$rpass)
, la idea es preguntar tanto por el password y el email de una vez.
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
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no valida cuando el password se repite

Publicado por xve (6935 intervenciones) el 29/11/2015 10:02:06
Si, claro, puede ser...

lo suyo seria que primero revisaras que todos los valores recibidos por el usuario fueran correctos... una vez tenemos los datos correctos del usuario, revisamos si existe o no el correo en la base de datos.

Creo que esta seria la manera correcta, ya que siempre hace la consulta aunque las contraseñas no coincidan... no tiene mucho sentido, no?
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
sin imagen de perfil
Val: 557
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no valida cuando el password se repite

Publicado por zendi (1056 intervenciones) el 29/11/2015 23:22:28
Pero Xve objetivamente qué valores debo validar en realidad? tengo las contraseñas y el email.Dame una idea,
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
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no valida cuando el password se repite

Publicado por xve (6935 intervenciones) el 30/11/2015 10:36:09
Hola Zendi, yo lo haría así:
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
<?php
error_reporting(E_ALL ^ E_WARNING ^ E_NOTICE);
$realname=$_POST['realname'];
$mail=$_POST['nick'];
$pass= $_POST['pass'];
$rpass=$_POST['rpass'];
 
# primero revisamos que las contraseñas sean iguales
if($pass==$rpass){
	$connect = pg_connect("host=localhost port=5432 dbname=administra user=postgres password=movilnet");
	$checkemail=pg_query("SELECT * FROM usuarios WHERE email='$mail'");
 
	$check_mail=pg_num_rows($checkemail);
 
	# revisamos que el correo no exista
	if($check_mail>0){
		echo '<script language="javascript">alert("Atencion, ya existe el mail designado para un usuario, verifique sus datos");</script> ';
	}else{
		//require("connect_db.php");
		pg_query("INSERT INTO login VALUES('','$realname','$pass','$mail','')");
		//echo 'Se ha registrado con exito';
		echo '<script language="javascript">alert("Usuario registrado con éxito");</script> ';
		pg_close($link);
	}
}else{
	echo 'Las contraseñas son incorrectas';
}
?>
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
sin imagen de perfil
Val: 557
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no valida cuando el password se repite

Publicado por zendi (1056 intervenciones) el 30/11/2015 12:24:47
Hola Xve, ya resolví la lógica de cuando el correo exista; ahora en la parte de las contraseñas faltaria un mensaje de si son iguales o no, lo voy a revisar y te aviso.
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
sin imagen de perfil
Val: 557
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no valida cuando el password se repite

Publicado por aldo (1056 intervenciones) el 02/12/2015 00:43:21
Hola Xve. Ya resolvi el problema.
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
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no valida cuando el password se repite

Publicado por xve (6935 intervenciones) el 02/12/2015 10:34:20
Hola Aldo, nos puedes compartir como lo solucionaste al final?
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
sin imagen de perfil
Val: 557
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no valida cuando el password se repite

Publicado por aldo (1056 intervenciones) el 02/12/2015 22:38:05
Hola Xve. Bueno el codigo que me enviaste lo mejoré asi:
y ahora si funciona.
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
<?php
error_reporting(E_ALL ^ E_WARNING ^ E_NOTICE);
$connect = pg_connect("host=localhost port=5432 dbname=pediatria user=postgres password=movilnet");
$realname=$_POST['realname'];
$mail=$_POST['nick'];
$pass= $_POST['pass'];
$rpass=$_POST['rpass'];
$idespecialidad = $_POST['idespecialidad'];
$checkemail="SELECT * FROM usuarios WHERE email='$mail'";
$res = @pg_query($connect,$checkemail);
  if($pass==$rpass){
  	  if(@pg_num_rows($res)>0){
    	echo ' <script language="javascript">alert("Atencion, ya existe el mail designado para ESTE usuario, verifique sus datos");</script> ';
	    echo "<script>location.href='index1.php'</script>";
	  }
  	  else
	  {
	echo $consulta = "INSERT INTO usuarios (id_especialidad,nombres,usuario_pass,email) VALUES ('$idespecialidad','$realname','$pass','$mail')";
            $agrega = @pg_query($connect,$consulta);
				echo '<script language="javascript">alert("Usuario registrado con éxito");</script>';
       		    echo "<script>location.href='index1.php'</script>";
	  }
	}
   else{
			echo '<script language="javascript">alert("Las Contraseñas no Coinciden, ESTAS DEBEN SER IDENTICAS!!!");</script> ';
	}
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no valida cuando el password se repite

Publicado por xve (6935 intervenciones) el 03/12/2015 08:18:46
Perfecto Aldo... lo único que haría, seria mover la consulta dentro del if, ya que si las contraseñas no coinciden, has realizado la consulta sql para nada.
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
sin imagen de perfil
Val: 557
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no valida cuando el password se repite

Publicado por aldo (1056 intervenciones) el 29/11/2015 02:06:24
hola Xve, bueno modifiqué el codigo; renombré la linea que está en negrita: if($check_mail>0)
y ahora si pasa por el mensaje:
echo ' <script language="javascript">alert("Atencion, ya existe el mail designado para un usuario, verifique sus datos");</script> ';
pero aun así cuando termina imprime tambien el mensaje:
echo ' <script language="javascript">alert("Usuario registrado con éxito");</script> '; y no debiera hacerlo, debiera terminar sin indicar esto. A ver que le puedes observar a este caso. Mientras tanto yo sigo buscando tambien la solucion.

este es el codigo:
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
31
32
33
34
35
36
37
38
<?php
error_reporting(E_ALL ^ E_WARNING ^ E_NOTICE);
	$realname=$_POST['realname'];
	$mail=$_POST['nick'];
	$pass= $_POST['pass'];
	$rpass=$_POST['rpass'];
 
    $connect = pg_connect("host=localhost port=5432 dbname=administra user=postgres password=movilnet");
 
 
	$checkemail="SELECT * FROM usuarios WHERE email='$mail'";
 
    $res = pg_query($connect,$checkemail);
 
	$check_mail=@pg_num_rows($res);
 
		if($pass==$rpass){
/*			if($check_mail>0)
			{
*/
				echo ' <script language="javascript">alert("Atencion, ya existe el mail designado para un usuario, verifique sus datos");</script> ';
/*			}
			else
			{*/
 
				pg_query("INSERT INTO login VALUES('','$realname','$pass','$mail','')");
				//echo 'Se ha registrado con exito';
				echo ' <script language="javascript">alert("Usuario registrado con éxito");</script> ';
				pg_close($link);
/*			}
*/
		}
		else
		{
			echo ' <script language="javascript">alert("Las contraseñas son incorrectas");</script> ';
		}
 
?>
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