Hi, I need to validate a form using data from database, I know it can be done using jquery validation plugin with remote method, in my page i’ve got a login form and the form for password recovery
This is my html page
<form class="login-form" action="includes/ctrl_login.php" method="post">
<h3 class="form-title font-blue">Accedi alla tua area</h3>
<div class="form-group">
<label class="control-label visible-ie8 visible-ie9">Nome Utente</label>
<input class="form-control form-control-solid placeholder-no-fix" type="text" autocomplete="off" placeholder="Username" name="username" /> </div>
<div class="form-group">
<label class="control-label visible-ie8 visible-ie9">Password Utente</label>
<input class="form-control form-control-solid placeholder-no-fix" type="password" autocomplete="off" placeholder="Password" name="userpassword" /> </div>
<div class="form-actions">
<button type="submit" class="btn blue uppercase">Accedi</button>
<!-- <a href="recovery.php" id="forget-password" class="forget-password">Password dimenticata?</a> -->
</div>
<div class="create-account">
<p>
<a href="javascript:;" id="forget-password" class="uppercase">Password Dimenticata?</a>
</p>
</div>
</form>
<!-- END LOGIN FORM -->
<!-- BEGIN FORGOT PASSWORD FORM -->
<form class="forget-form" id="formforgotpassword" >
<h3 class="font-blue">Password dimenticata?</h3>
<p> Inserisci la tua email di seguito e ti invieremo le informazioni su come ripristinare la tua password con un semplice passaggio. </p>
<div class="form-group">
<input class="form-control placeholder-no-fix" id="uemaill" type="email" autocomplete="off" placeholder="Email" name="uemaill" /> </div>
<div class="form-actions">
<button type="button" id="back-btn" class="btn blue btn-outline">Login</button>
<button type="submit" name="submit" class="btn blue uppercase pull-right">Invia</button>
</div>
</form>
<!-- END FORGOT PASSWORD FORM -->
This is the javascript
$(document).ready(function () {
$("#formforgotpassword").validate({
errorElement: 'span',
errorClass: 'help-block help-block-error',
focusInvalid: false,
ignore: "",
rules: {
uemaill: {
required: true,
email: true,
remote: {
url: "includes/ctrl_password_recovery.php",
type: "post",
data: {
email: function(){
return $('.forget-form :input[name="uemaill"]').val();
}
}
}
}
},
messages: {
uemaill: {
required: "Please enter your email address.",
email: "Please enter a valid email address.",
remote: "Email non esistente!"
}
},
highlight: function (element) {
$(element)
.closest('.form-group').addClass('has-error');
}
});
});
jQuery('#forget-password').click(function() {
jQuery('.login-form').hide();
jQuery('.forget-form').show();
});
jQuery('#back-btn').click(function() {
jQuery('.login-form').show();
jQuery('.forget-form').hide();
});
And this is my php file
$user_email = $_POST['uemaill'];
$query_check_user = mysqli_prepare($conn, "SELECT user_email FROM users WHERE user_email = ?");
mysqli_stmt_bind_param($query_check_user, 's', $user_email);
mysqli_stmt_execute($query_check_user);
$email_exist = mysqli_stmt_num_rows($query_check_user);
mysqli_stmt_fetch($query_check_user);
if($email_exist == $user_email){
echo "true";
}else{
echo "false";
}
mysqli_stmt_close($query_check_user);