用户已存在使用ajax的脚本始终返回用户已经收到的消息

时间:2013-12-30 13:37:10

标签: php ajax

我是PHP的新手,我创建了一个简单的登录页面,我在其中应用了一个ajax脚本来检查“用户是否已经存在”。 但是,无论我是否插入新值,脚本总是返回“用户已被采取”消息。我检查了整个代码,我无法弄明白我错误的线索。

admin.php
==========
<head>
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript" src ="usernameavail.js"></script>
</head>
<form action="admin.php" method="post" name="loginfrm">
<table width="600" border="0">
  <tr>
    <td>User Name</td>
    <td><input name="txtusername" type="text" maxlength="15" id="txtusername" /></td>
          <span id="message"></span>
</tr>
    <tr>
    <td></td>

     </tr>
      <tr>
    <td>Password</td>
    <td><input name="txtpass" type="password" maxlength="7" />
    <span style="color:#FF0000">*</span> Minimum 5 alphanumeric 
      </td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td><input type="submit" name="submit"/></td>
  </tr>
   <tr>
       <td><a href="">Forget password?</a></td>
      <td><a href="registration.php">New Register</a></td>
    </tr>
    </table>
</form>
=========
 check.php
 =========
 <?php
  include ("includes/dbConfig.php");
  $username=$_POST["txtusername"];
  $query=mysql_query("SELECT * from logininfo where username='$username' ");
  $find=mysql_num_rows($query);
  echo $find;
 ?>
 ===================   
 usernameavail.js
 ===================
 $(document).ready(function()
 {
 $("#txtusername").change(function()
 {
 $("#message").html("<img src='images/ajax-loading.gif' /> checking...");
 var username= $("#txtusername").val();
 $.ajax(
 {
 type:"post",
 url:"check.php",
 data:"username="+username,success:function(data)
 {
 if(data==0)
 {
 $("#message").html("<img src='images/accept.png' /> Username available");
 }
 else
 {
 $("#message").html("<img src='images/error.png' /> Username already taken");
 }
 }
 });
 });
 });

4 个答案:

答案 0 :(得分:0)

在javascript文件中,将引号设为零

if(data == '0')

答案 1 :(得分:0)

将此更改为

    $.ajax(
 {
 type:"post",
 url:"check.php",
 data:"username="+username

 $.ajax(
 {
 type:"post",
 url:"check.php",
 data: username:username

答案 2 :(得分:0)

如果在check.php替换

,那就更好了
echo $find;

if($find>0)
 {
   echo 'something';
 }

在你的ajax调用中检查数据是否有价值。

答案 3 :(得分:0)

更改此行

'data:"username="+username,success:function(data)'

data:{"txtusername":username},success:function(data)

这将有效