2011-11-09 32 views
0

我想知道是否有人可以快速查看下面的代碼,並告訴我是否有任何問題。jQuery - 從MySQL數據庫問題檢查用戶名

當用戶名已經註冊時,它似乎沒有運行錯誤,我的JS控制檯也沒有拋出任何錯誤。

代碼如下:

if(iUsername.val().length > 4) { 
     $.ajax({ 
      type: "POST", 
      url: "/index.php/ajax/username_availability", 
      data: "username="+ iUsername, 
      success: function(msg){ 
       if(msg == 'OK'){ 
       } else { 
        iUsername.siblings('.error').text('This username is already registered'); 
        error = true; 
       } 
      } 
     }); 
    } 

林通過以下獲得iUsername:

var iUsername = createProfileForm.find('#username'); 

和PHP代碼來檢查用戶名如下(笨)

function username_availability() 
{ 
    $res = $this->users->is_username_available($this->input->post('username')); 
    if($res) 
     $this->output->set_output('OK'); 
    else 
     $this->output->set_output('NOT OK'); 
} 
+0

您可以添加指定'iUsername'的代碼? – jli

+0

msg在成功函數中的價值是什麼? – BNL

+1

MySQL在這裏無關緊要。 – jrummell

回答

0
data: "username="+ iUsername, 

應該是

data: "username="+ iUsername.val(), 

您還可以清理你的if語句:

if(msg !== 'OK'){ 
    iUsername.siblings('.error').text('This username is already registered'); 
    error = true; 
} 
+0

感謝您的輸入..雖然似乎沒有工作..我編輯了我原來的帖子 – BigJobbies

+0

@Seth'!=='或'!='? – kamaci

+0

區別是非常基本的'!=='手段是不同的值和類型。意思是'OK'和一個字符串。 '!='只意味着不代表'OK' – Seth