Hola queridos amigos, estoy teniendo problemas con una aplicacion muy simple que lo que hace es registrar usuarios.
Os explico: tengo una pagina que muestra un formulario para registrar nuevos usuarios.
El nombre de usuario lo recojo del formulario en la variable "$nombrenuevo".
La tabla donde donde guardo dicha informacion se llama "socio" y el campo se llama "nombreregistro" .
Lo que hago es mostrar un formulario en el que recojo varias variables entre ellas el nombreregistro.Para saber si ese nombre ya lo tengo en la base de datos realizo la siguiente consulta:
$sql="SELECT nombreregistro FROM socio WHERE nombreregistro='$nombrenuevo'";
$resultado=mysql_query($sql) or die ("No se pudo ejecutar la consulta.");
/*Se supone que no tengo ese nombre de registro dentro de la base de datos pero lo compruebo con la siguiente linea:*/
if(mysql_num_rows($resultado)==0){
/*Si el resultado es 0 entonces inserto en la base de datos porque el valor no esta dentro de la base de datos: */
$sql="INSERT INTO socio (nombreregistro) VALUES ('$nombrenuevo')";
mysql_query($sql);
/*Y en esta linea digo que si hay resultado es que el usuario ya existe*/
}else if(mysql_num_rows($resultado)>0){
echo "el usuario que esta registrando ya esta en uso";
}
Bueno, pues el problema que tengo es que siempre obtengo un valor mayor que 0, aunque no tenga ese nombre de registro en la base de datos siempre me dice que "el usuario que esta registrando ya esta en uso".
Como veis es simple pero no entiendo porque no lo hace correctamente.