Título: Ayuda query simple en mysql Publicado por: yaG en 25 Enero 2007, 16:19 pm Buenas,
les explico mi problema, lo cual debe ser algo muy simple... Estoy haciendo un alta de registraciòn de usuarios y quiero validar que el usuario no pueda ser dado de alta si ya existe el nick ingresado. Utilizo el siguiente còdigo: <? require("funciones.php"); ?> <? $conexion=Conectar('localhost','root','','3t'); //funcion propia para conectarme y seleccionar la BD $nick=$_POST[txtNick]; $nombre=$_POST[txtNombre]; $apellido=$_POST[txtApellido]; $equipo=$_POST[txtEquipo]; $pass=$_POST[txtPass]; $pass2=$_POST[txtPass2]; $mail=$_POST[txtMail]; //valido el ingreso de password if($pass!=$pass2){ echo "La confirmación no coincide con la password ingresada.";?> <br> <? echo "Por favor ingresala nuevamente."; }else{//valido que no exista nick duplicado $duplicado=mysql_query("SELECT * FROM USUARIOS WHERE nick = '$nick'",$conexion); if($duplicado==FALSE){ $sql="INSERT INTO USUARIOS (nick, nombre, apellido, equipo, password, mail)"; $sql.=" VALUES ('$nick','$nombre','$apellido','$equipo','$pass','$mail')"; $bPude=mysql_query($sql,$conexion); if($bPude){echo "El usuario fue registrado correctamente.";} }else{ echo "El nombre de usuario ingresado ya esta registrado, por favor ingrese uno nuevo."; } } mysql_free_result($duplicado); mysql_close($conexion); ?> Bueno cuando hago SIEMPRE me devuelve en $duplicado el resource id #4. Sea cual sea el nick que haya ingresado dice q me lo encuentra en el resource #4. Cuando la tabla "USUARIOS" se encuentra vacìa, o sea tiene 0 registros... No logro entender en que estoy fallando. Agradeceria si alguien pudiera darme una mano con esto. Saludos. Título: Re: Ayuda query simple en mysql Publicado por: alone-in-the-chat en 25 Enero 2007, 16:24 pm usa
Código:
Saludos. PD. Leete la documentacion y revisa los valores de retorno del mysql_query Título: Re: Ayuda query simple en mysql Publicado por: yaG en 25 Enero 2007, 16:59 pm me sirvio, muchas gracias!!
Pense que si no encontraba nada me devolvìa directamente FALSE y por eso lo implemente de esa manera... pero al final el false lo devuelve si se produce un error en la consulta. Si se ejecuta correctamente va a retornar un nuevo identificador, aunque no haya encontrado ningún registro que cumpla la condición. Gracias nuevamente! |