Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Comprobar disponibilidad de un valor en la base de datos

Estas en el tema de Comprobar disponibilidad de un valor en la base de datos en el foro de Frameworks JS en Foros del Web. Hola Todos !!! Espero hacer una pequeña contribución a un tema que estuve un tiempo buscando pero lo encontré incompleto y me gustaría si alguno ...
  #1 (permalink)  
Antiguo 26/11/2009, 19:40
 
Fecha de Ingreso: noviembre-2009
Mensajes: 8
Antigüedad: 15 años
Puntos: 0
Sonrisa Comprobar disponibilidad de un valor en la base de datos

Hola Todos !!!

Espero hacer una pequeña contribución a un tema que estuve un tiempo buscando pero lo encontré incompleto y me gustaría si alguno puede ayudarme a completarlo. A continuación desarrollo el tema y mi pedido de ayuda.

El código que subo permite verificar si en nuestra base de datos existe un valor y nos muestre en nuestro formulario de carga de datos un mensaje de "Dato Existente" o "Dato Inexistente". El ejemplo que coloco es para verificar la disponibilidad de un NICK al momento de registrarse el usuario.

Hasta ahí todo bien, el código que subo funciona de maravillas y es muy sencillo, (apreciación personal de alguien que recién está empezando con esto), pero mi pregunta es como puedo hacer que no solo verifique la existencia de un valor sino también si ese valor introducido en el formulario de carga existe no me permita realizar el envio de los datos cargados, osea no permita hacer el submit.

Aquí va el código:

La única librería que necesitamos descargar es prototype.js y llamarla en el HEAD de nuestra web:

<script src="/js/prototype.js" type="text/javascript"></script>

Bajar el prototype.js - h t t p://w w w.prototypejs.o r g/assets/2008/1/25/prototype-1.6.0.2.j s


En el formulario, en el INPUT donde hay que introducir el nick de usuario pondremos un evento javascript onKeyUp llamando a nuestra función para comprobar si existe el nick. Usamos el evento onKeyUp para que se llame a la función cada vez que se introduzca una letra. También insertamos una sección SPAN, donde se escribirá si existe el usuario o no.

<input onkeyup="comprobar(this.value)" name="nickname" />


Ahora definimos también la función “comprobar” dentro del HEAD:

<script type="text/javascript">// < ![CDATA[
//<![CDATA[
function comprobar(nick)
{
var url = 'h t t p ://'+location.host+'/ajax_comprobar_nick.php';
var pars = ("nickname=" + nick);
var myAjax = new Ajax.Updater( 'comprobar_mensaje', url, { method: 'get', parameters: pars});
}
// ]]></script>


La variable “url” es la dirección donde se encuentra el archivo php que comprobará si existe el nick en la base de datos.
En la variable “pars” escribimos las diferentes varibles que vamos a pasar al anterior php.
El primer parámetro de Ajax.Updater es la etiqueta html que se va a actualizar con el resultado de la función (diciendo si existe el usuario o no). El segundo parámetro es la variable “url” con la dirección del archivo php que ya hemos definido antes. En el tercer parámetro decimos el método por el que pasar las variables a la función (normalmente GET) y las variables que vamos pasar (que hemos definido en la variable “pars”).

El archivo ajax_comprobar_nick.php tendrá el siguiente contenido:


<?php
// Que no se nos olvide incluir nuestro fichero con la conexion a la base de datos.
include("conexion.php");
$nick=$_REQUEST['nickname'];
$sql="SELECT nick FROM usuarios WHERE nick='$nick'";
$res=mysql_query($sql);
$total=mysql_num_rows($res);
if($total&gt;0)
{
// El usuario existe en la Base de Datos
echo "Este nick está ocupado";
}
else
{
// Ese nick esta libre
echo "Nick libre";
}
?>

Ahora cada vez que se escriba una letra en el campo nick del formulario, se llamará al fichero php anterior para comprobar si existe el nick en la base de datos y se actualizará el campo SPAN “comprobar_mensaje” con el resultado.


Bajar los archivos del ejemplo[/URL] - h t t p ://w w w.jorgebravo.e s/wp-content/plugins/download-monitor/download.php?id=1"

Fuente: h t t p ://w w w.jorgebravo.e s/2009/07/ejemplo-sencillo-con-ajax-comprobar-disponibilidad-de-un-nick/
  #2 (permalink)  
Antiguo 01/12/2009, 08:47
 
Fecha de Ingreso: septiembre-2009
Mensajes: 81
Antigüedad: 15 años, 2 meses
Puntos: 1
Respuesta: Comprobar disponibilidad de un valor en la base de datos

Create una funcion k sea la k se encargue de enviar el formulario al hacer click en el boton submit. A esa funcion le envias un parametro boolean, si $res esta vacio le envias false y si esta lleno le envias true. En la funcion le preguntas si ese parametro es false entonces haces el form.submit() y si es true le haces un alert.

Algo asi:

Cita:
<head>
function sumbitForm(var,formId){
if (var=="false"){
document.formId.submit();
}else{
alert("Lo siento, este usuario ya existe");
}
}
</head>
y en el formulario eliminas el action y en el evento onclick llamas a esa funcion:
Cita:
<?php
if (isset($res) and $res!=""){$var=true}
else{$var=false}
?>
<input value='Aceptar' type='button' onclick=\"submitForm(\"<?php echo $var; ?>\",formId)\">
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 19:05.