Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

error registro

Estas en el tema de error registro en el foro de Bases de Datos General en Foros del Web. algien me puede ayudar a solucionar un error que me da el registro este es el error: Warning: mysql_num_rows(): supplied argument is not a valid ...
  #1 (permalink)  
Antiguo 18/09/2004, 16:32
 
Fecha de Ingreso: junio-2004
Mensajes: 65
Antigüedad: 20 años, 5 meses
Puntos: 0
error registro

algien me puede ayudar a solucionar un error que me da el registro este es el error: Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\appserv\www\uregistrar.php on line 94
el codigo de la pagina es este:
[/CODE]
<?
include("config.php") ;
if($registrar) {
function quitar($texto) {
$texto = trim($texto) ;
$texto = htmlspecialchars($texto) ;
return $texto ;
}
$nick = quitar($nick) ;
$email= quitar($email) ;
// Comprobar si ya existe este usuario en la base de datos
$resp = mysql_query("select id from usuarios where nick='$nick' or email='$email'") ;
if(mysql_num_rows($resp) != 0) {
echo "Ya existe un usuario con ese nick o email en la base de datos. Haz click <a href=\"javascript:history.back()\">aquí</a> para regresar." ;
}
else {
$fecha = time() ;
$contrasena = quitar($contrasena) ;
mysql_query("insert into usuarios (fecha,nick,contrasena,email,ip) values ('$fecha','$nick','$contrasena','$email','$REMOTE_ ADDR')") ;
echo "Has sido registrado con éxito. Haz click <a href=\"index.php\">aquí</a> para ir a la página principal." ;
}
}
else {
?>
<script>
function revisar() {
if(formulario.nick.value.length < 2) { alert('El nick debe contener por lo mínimo 2 caractéres') ; return false ; }
if(formulario.contrasena.value.length < 5) { alert('La contraseña debe contener por lo mínimo 5 caractéres') ; return false ; }
if(formulario.email.value.length == 0) { alert('Debes poner un email válido') ; return false ; }
}
</script>
<form name="formulario" method="post" action="uregistrar.php" onsubmit="return revisar()">
<b>Nick:</b><br>
<input type="text" name="nick" maxlength="20"><br>
<b>Contraseña:</b><br>
<input type="password" name="contrasena" maxlength="20"><br>
<b>Email:</b><br>
<input type="text" name="email" maxlength="40"><br><br>
<input type="submit" name="registrar" value="Registrar">
</form>
<?
}
mysql_close($conectar) ;
?>[CODE]
  #2 (permalink)  
Antiguo 18/09/2004, 16:59
Avatar de jmn2k1  
Fecha de Ingreso: noviembre-2001
Ubicación: Buenos Aires...
Mensajes: 489
Antigüedad: 23 años
Puntos: 2
Cuando alguna de las funciones de mysql de PHP da un error de esos quiere decir que el argumento de la funcion esta mal, lo que generalmente es que hallas puesto mal el nombre de la variable, o que la consulta esta mal.

Como en tu caso el nombre de la variable esta bien ($resp) el problema debe estar en la consulta:

Código PHP:
$resp mysql_query("select id from usuarios where nick='$nick' or email='$email'") ; 
Chequea que esten bien escritos los nombre de los campos (si puedes ejecutarla en algun otro cliente de mysql mejor, asi te aseguras que la consulta esta bien).
__________________
JmN
  #3 (permalink)  
Antiguo 18/09/2004, 17:14
 
Fecha de Ingreso: junio-2004
Mensajes: 65
Antigüedad: 20 años, 5 meses
Puntos: 0
aver es que creo que e creado mal la base de datos,esto lo e echo de un manual pos que es la primera vez que lo ago y no se casi na en el manual me dicen que para crear la tabla en la base de datos debo poner el codigo que pongo abajo en el phpmyadmin pero el problema es que donde en que archivo de la carpeta de phpmyadmin, mira esto es lo de la tabla.

<?
CREATE TABLE `users` (
`id` INT( 4 ) NOT NULL AUTO_INCREMENT,
`nick` VARCHAR(30) NOT NULL ,
`pass` VARCHAR(30) NOT NULL ,
`email` VARCHAR(50) NOT NULL ,
`fecha` INT(15) NOT NULL ,
`level` INT(2) NOT NULL ,
`rollo` LONGTEXT NOT NULL ,
INDEX ( `id` )
);
?>
por fabor si sabes como puedo crear bien la tabla echame un cable, benga gracias.
  #4 (permalink)  
Antiguo 18/09/2004, 17:20
Avatar de jmn2k1  
Fecha de Ingreso: noviembre-2001
Ubicación: Buenos Aires...
Mensajes: 489
Antigüedad: 23 años
Puntos: 2
Para crear la tabla, con el phpmyadmin tenes que ir a donde de deja un campo para ejecutar codigo y poner eso que tenes ahi sin las etiquetas de php (<? y ?>), si hay algun error no la vas a poder crear pero aparenta estar bien.
__________________
JmN
  #5 (permalink)  
Antiguo 18/09/2004, 17:29
 
Fecha de Ingreso: junio-2004
Mensajes: 65
Antigüedad: 20 años, 5 meses
Puntos: 0
mira al intentar crear la base de datos me da este error:


Error

consulta SQL :

CREATE DATABASE `CREATE TABLE ` users ` (` ;



MySQL ha dicho:


#1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'users` (`' at line 1
  #6 (permalink)  
Antiguo 19/09/2004, 04:22
 
Fecha de Ingreso: junio-2004
Mensajes: 65
Antigüedad: 20 años, 5 meses
Puntos: 0
ya esta todo solucionado, gracias por la ayuda
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:04.