用于用户名可用性检查的 jQuery Validate 远程方法
如何利用 jQuery Validate 中的远程方法来验证用户名是否存在于数据库?
场景:
考虑以下场景:
$("#signupForm").validate({ rules: { username: { required: true, minlength: 3, remote: "check-username.php" } }, messages: { username: { remote: "This username is already taken! Try another." } } });
<?php require_once "./source/includes/data.php"; header('Content-type: application/json'); $name = mysql_real_escape_string($_POST['username']); $check_for_username = mysql_query("SELECT username FROM mmh_user_info WHERE username='$name'"); if (mysql_num_rows($check_for_username) > 0) { $output = true; } else { $output = false; } echo json_encode($output); ?>
问题:
尽管有上面的代码,用户名字段始终显示错误,即使用户名不在数据库中。
解决方案:
原始 PHP 代码在验证用户名可用性方面无效。以下修改版本解决了该问题:
require_once "./source/includes/data.php"; header('Content-type: application/json'); $request = $_REQUEST['username']; $query = mysql_query("SELECT * FROM mmh_user_info WHERE username ='$username'"); $result = mysql_num_rows($query); if ($result == 0){ $valid = 'true';} else{ $valid = 'false'; } echo $valid; ?>
以上是如何使用 jQuery Validate 的远程方法进行用户名可用性检查?的详细内容。更多信息请关注PHP中文网其他相关文章!