PHP - Validar si existe registro en la base de datos

 
Vista:
sin imagen de perfil
Val: 16
Ha disminuido su posición en 14 puestos en PHP (en relación al último mes)
Gráfica de PHP

Validar si existe registro en la base de datos

Publicado por Joe (15 intervenciones) el 21/09/2016 08:27:25
Hola a todos

alguien me podría explicar porque no funciona correctamente mi codigo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
$nombre = $_POST['txtnombre'];
$telefono = $_POST['txttelef'];
$correo = $_POST['txtcorreo'];
$hotel	= $_POST['txthotel'];
 
$contador="SELECT COUNT(Nombre) FROM personas WHERE Nombre = '$nombre'";
$rescontador= mysql_query($contador) or die(mysql_error());
if(mysql_num_rows($rescontador)>0){
	echo '<script language="javascript">alert("El ya registro existe En la base de datos"); window.location.href="index.php";</script>';
	}
else{
	$query = mysql_query("insert into personas (Nombre,Telefono,Correo,Hotel) values ('$nombre','$telefono','$correo','$hotel')");
	echo '<script language="javascript">alert("Registro Agregado Correctamente"); window.location.href="index.php";</script>';
}
?>

Lo que pasa es que me dice que el registro ya existe en la base de datos aunque agregue un registro que no se encuentra.

Agradeseria me orientaran

Saludos a todos.
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
sin imagen de perfil

Validar si existe registro en la base de datos

Publicado por David (7 intervenciones) el 21/09/2016 10:37:10
Buenas Joe

No se si ya has dado con el problema de tu código. Para empezar mysql_num_rows es un método en desuso, no se los poblemas que puedes tener.
Este método te envia el numero de lineas y tu estas recuperando una linea por lo tanto tu resultado sera siempre 1.
No lo he probado pero supongo que la información que te interesa esta en $rescontador. Puedes hacer un var_dump de $rescontador para ver su contenido y explotarlo de la mejor manera.
Si deseas tener el mismo efecto puedes configurar tu columna como UNIQUE en sql de esta manera si intentas insertar un nombre que ya existe te devolverá un error.

Espero que te ayude y si me equivoco que lo entiendas y que te he respondido en un ratito en mi trabajo.

Atentamente
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