Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/01/2007, 21:59
zack7
 
Fecha de Ingreso: enero-2007
Mensajes: 14
Antigüedad: 17 años, 3 meses
Puntos: 0
Problema de verificacion de nombre de usuario existente

Hola, veran tengo este problema, e creado un formulario de registro en php para q me cree los usuarios de mi web en la database.
Y los crea perfectos, sin mayor complicacion, el problema ha venido al introducirle un codigo para q detectara si ya existia en la database un usuario con el mismo nick ... no me reconoce la funcion mysql_fetch_array() y me devuelve este error:

"Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\index.php on line 37"

He buscado por el foro a ver si habia una solucion pero e visto q todas las preguntas relaccionadas con este tema estaban sin responder :(
A ver si alguien q sepa como se puede arreglar nos cede su ayuda a todos los q tenemos el mismo problema.

Este el codigo de mi page de registro:
Código PHP:
<html>
<body>
   <form method="post" action="index.php">
   Usuario   :<input type="Text" name="usuario"><br>
   Password:<input type="Text" name="passw"><br>
   E-mail   :<input type="Text" name="email"><br>
   <input type="Submit" name="enviar" value="Crear cuenta">
   </form> 
<?php 
   
function quitar($mensaje)
   {
   
$mensaje str_replace("<","<",$mensaje);
   
$mensaje str_replace(">",">",$mensaje);
   
$mensaje str_replace("\'","'",$mensaje);
   
$mensaje str_replace('\"',"\\\\",$mensaje);
   return 
$mensaje;
   }


   if (
$enviar) {
   
// process form
   
$dbhost "...";
   
$user "root";
   
$password "...";
   
$usebdd "prueba";
   
$row '$usuario';
   
$connexion mysql_connect($dbhost,$user,$password,$usebdd);
   if (!
$connexion) {
   echo 
"Impossible to connect";
   exit;
   }

   if(
trim($HTTP_POST_VARS["usuario"]) != "" && trim($HTTP_POST_VARS["email"]) != "")
   {
   
$sql "SELECT id FROM account WHERE username='".quitar($HTTP_POST_VARS["usuario"])."'";
   
$result2 mysql_query($sql);
   if (
$row =  mysql_fetch_array($sql))     ---   Linea del error
     
{
      echo 
"Error, nick escogido por otro usuario";
     }
      else
   {
    
$db mysql_select_db($usebdd$connexion);
   if (!
$db) {
   echo 
"Impossible to find this database";
   exit;
   }
   
$sql "INSERT INTO account (username, password, email) ".
     
"VALUES ('$usuario', '$passw', '$email')";
   
$result mysql_query($sql);
   echo 
"¡Gracias! Hemos recibido sus datos. Ahora puede loguear\n"
   exit;
   }
mysql_free_result($result);
}
else
{
echo 
"Debe especificar un nick y password";
}
mysql_close();
?> 
 
<?php 
//end if 
?> 

</body>
</html>
gracias por la ayuda :)

saludos