Te damos la bienvenida a nuestra web, aquí vas a hallar la solucíon a lo que estabas buscando.
Solución:
La A en AJAX es realmente muy importante. Significa Asincrónico. Esto significa que activa una solicitud al servidor que puede tardar un tiempo en procesarse y obtiene una respuesta más tarde. Esta respuesta ocurre dentro de la devolución de llamada exitosa. Pero dado que esto sucede mucho más tarde que el envío del formulario real, su formulario ya se envió antes del viene la respuesta espalda. Así que volviendo false de una devolución de llamada exitosa de AJAX no tiene ningún sentido. lo que quieres hacer es volver false desde el controlador de envío de su formulario. Veamos cómo podríamos implementar esto.
Podrías suscribirte a la .submit
manejador del formulario y envíe una solicitud AJAX para verificar si el correo electrónico ya se tomó o no y, si no se toma manualmente, active el envío del formulario dentro de la devolución de llamada AJAX exitosa:
$('form').submit(function()
// we send an AJAX request to validate the unicity of the email
$.ajax(
url: '/ajax/verify-email.php',
type: 'POST',
data: email: $('#email').val() ,
// we set the context to the form so that inside
// the success callback 'this' points to the form
context: this,
success: function(result)
if (result != '1')
// If the server send something different than 1
// we know that the email is unique and trigger
// the submission of the form using the underlying
// DOM element to avoid calling the .submit handler
// recusrively
this.submit();
else
// The email is not unique => we are informing
// the user that the email is already in use
alert('Another user is using this email');
$('#email').focus();
);
// we cancel the normal submission of the form
return false;
);
Además, nunca confíe en la validación del lado del cliente. Asegúrese de que está realizando el email is unique
verifique una vez que el formulario se haya enviado con éxito al servidor. Si está utilizando una base de datos SQL que se logra fácilmente con una restricción única en su campo de correo electrónico.
Sección de Reseñas y Valoraciones
No se te olvide dar visibilidad a este post si te ayudó.