2012-05-10 39 views
0

我有一段代碼,我需要有人給我一些幫助,以確定我犯的錯誤。我很感謝您提供的任何幫助。簡單的登錄ajax檢查

 $('#username').change(function() 
    { 
     $.ajax(
     { 
      type:"POST", 
      url:'login.php' 
      //datatype:'html' 
     } 
     ).done(function(data) 
     { 
      $('#info').html(data); 
     } 
     ); 
    }); 

我的login.php包括使用mysqli的功能來連接到數據庫,並檢查用戶是否已經存在,等等等等。

function query($query) 
{ 
    $mysqli = new mysqli('localhost','root', 'okazaki', 'gene_database'); 
    if (mysqli_connect_errno()) 
    { 
     printf("Connect failed: %s\n", mysqli_connect_error()); 
     exit(); 
    } 

    if($result=$mysqli->query($query)) 
    { 
     while($row=$result->fetch_assoc()) 
     { 
      $data[]=$row; 
     } 
     $mysqli->close(); 
     print_r($data); 
     return $data; 
    } 
    else 
    { 
     printf("Unable to query data"); 
     $mysqli->close(); 
     return null; 
    } 
} 
+0

你看到了什麼問題?任何錯誤? – Daan

+0

哪個對象有id用戶名,發佈你的html語法 – 2012-05-10 08:01:37

+0

其中是腳本中對這個函數的調用? –

回答

0

echo $data並沒有返回它,return不輸出任何東西,它只是簡單地返回它(在服務器級別)

(編輯:你的問題遺憾錯過了print_r

在哪裏你的query函數被調用?在你發佈的例子中沒有。您可以將其他屬性添加到您的ajax請求中,例如action: 'checkUser'或類似的東西,然後在login.php檢查$_POST['action']是否爲checkUser,如果是,則運行query函數。

此外,你實際上沒有發送任何數據在你的Ajax請求進行檢查,看你的例子中,你應該以建立$query被髮送的用戶名($('#username').val())的值傳遞給你的query功能。

希望能指引您朝着正確的方向發展。

+1

是的,但他在'return'之前有'print_r($ data)'? – Karo

+0

啊,是的,錯過了:第 – billyonecan