Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/06/2006, 16:10
Avatar de renzoster
renzoster
 
Fecha de Ingreso: mayo-2006
Ubicación: Lima
Mensajes: 63
Antigüedad: 18 años, 6 meses
Puntos: 0
Buscar si es registrado o no? con formulario de registro. COmo le hago?

Hola quisiera saber si me pueden ayudar en esto, estoy haciendop un sistema de registrados, pero con un pequeño detalle al presionar en verificar busca si el nick esta registrado o no. Ahora el problema es que no busca como se debe y menciona que todos los nicks estan disponibles pesar de no ser asi:

El archivo registrar.php
Código PHP:
<?
if($registrar) {
function 
quitar($texto) {
$texto trim($texto) ;
$texto htmlspecialchars($texto) ;
return 
$texto ;
}
$nick quitar($nick) ;
$emailquitar($email) ;
// Comprobar que el usuario existe 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) ;
$ip $REMOTE_ADDR ;
mysql_query("insert into usuarios (fecha,nick,contrasena,email,ip) values ('$fecha','$nick','$contrasena','$email','$ip')") ;
echo 
"Has sido registrado con éxito. Haz click <a href=index.php>aquí</a> para ir a la página principal." ;
}
}
else {
?>
<p>Los datos marcados con un asterisco (*) son obligatorios.
<script>
function revisar() {
if(formulario.nick.value.length < 3) { alert('El nick debe contener por lo mínimo 3 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>

<script type="text/javascript" language="javascript" src="../ajax/XHConn.js"></script>
<script>
var myConn = new XHConn();

if (!myConn) alert("XMLHTTP not available. Try a newer/better browser.");

var include_terminado = function (oXML) { document.getElementById('verificacion').innerHTML = oXML.responseText; };

function comprobar_existe (url)
{
    document.getElementById('verificacion').innerHTML = "<center><img src='loading_ani2.gif' /></center><br>";
    
    myConn.connect("../ajax/verificar_user.php", "GET", "nick="+url, include_terminado);
}

</script>

<form name="formulario" method="post" action="index.php?go=registrar" onsubmit="return revisar()">
<b>* Nick:</b><br>
  <input type="text" name="nick" maxlength="20" class="form">
  <input type="button" onclick="comprobar_existe();" name="verificar" value="Verificar" class="form"><br>
<div id="verificacion">
</div>
<b>* Contraseña:</b><br>
<input type="password" name="contrasena" maxlength="20" class="form"><br>
<b>* Email:</b><br>
<input type="text" name="email" maxlength="40" class="form"><br><br>
<input type="submit" name="registrar" value="Registrar" class="form">
</form>
<?
}
?>
Y el archivo para verificar verificar_user.php:
Código PHP:
<?php
$revisar 
"si";
if(
$revisar "si") {
$nickname $_GET['formulario.nick.value'];
include(
"../data/conexdb.php");
$resp mysql_query("select * from usuarios where nick = '$nickname'") or die (mysql_error());
if(
mysql_num_rows($resp) == "0") {
echo 
"<font color=green>El nick elegido está disponible</a><br>";
} else {
echo 
"<font color=red>El nick elegido ya esta siendo usado</a><br>";
  }
}
?>
Supongo que el error esta en verificar_user.php, en la parte de $nickname = $GET...