通过使用mysql的php中的AJAX实时检查用户名是否存在
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了通过使用mysql的php中的AJAX实时检查用户名是否存在,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2078字,纯文字阅读大概需要3分钟。
内容图文
![通过使用mysql的php中的AJAX实时检查用户名是否存在](/upload/InfoBanner/zyjiaocheng/912/d5314bf8de9641508baa353b3f01fcfd.jpg)
我正在开发一个php / MySQL项目,要求我在用户输入用户名时实时检查用户名.
这是我的username.php,用户实际输入用户名&密码和触发check.php的地方……
<html>
<head>
<script type="text/javascript" src="js/jquery-1.7.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#username").change(function(){
$("#message").html("<img src='images/loader.gif' /> checking...");
var username = $("#username").val();
$.ajax({
type:"post",
url:"check.php",
data:"username =" + username,
success:function(data){
if(data==0){
$("#message").html("<img src='images/tick.png' /><span style='font-size:13px; color: black'> Username available</span>");
}
else{
$("#message").html("<img src='images/err.png' /><span style=font-size:13px; color: red'> Username already taken</span>");
}
}
});
});
});
</script>
</head>
<body>
<table>
<tr>
<td>Username</td>
<td>:</td>
<td><input type="text" name="username" id="username"/><td>
<td id="message"><td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input type="text" name="password" id="password" /><td>
</tr>
</table>
</body>
</html>
这是check.php,其中在数据库中检查用户名.
<?php
$con = mysqli_connect("localhost", "root", "hilbi", "userdb");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
// $username = $_POST["username"];
$username = 'hilbi';
$query = mysqli_query($con,"SELECT * FROM users WHERE username = '$username' ");
$find = mysqli_num_rows($query);
echo $find;
mysqli_close($con);
?>
现在check.php工作正常(我通过单独执行检查,并在找到用户名时返回1,反之亦然)
但是,当我执行username.php时,它总是返回已经采用的用户名.看起来它实际上并没有在数据库中看到实际上没有这样的用户名.
任何形式的帮助将不胜感激……
解决方法:
使用jQuery在javascript中发送数据,如下所示:
$.post( "check.php", { user: $("#username").val() }, function (data){
if(data=='1'){
//do 1
}
elseif(data=='0'){
//do 0
}
});
在你的check.php中获取这样的用户名
//some basic validation
if(!isset($_POST['user'] || empty($_POST['user']))
{
echo '0'; exit();
}
$username = trim($_POST['user']);
为了使其正常工作,check.php必须返回1或0,不要在那里或任何地方回显mysql错误.如果发生任何错误,只需回显0.
内容总结
以上是互联网集市为您收集整理的通过使用mysql的php中的AJAX实时检查用户名是否存在全部内容,希望文章能够帮你解决通过使用mysql的php中的AJAX实时检查用户名是否存在所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。