2014-06-09 69 views
0

我試圖檢查用戶名是否在數據庫中退出。如果退出,它應該給出錯誤消息,並阻止用戶將詳細信息添加到數據庫,直到他們編輯用戶字段或使其有效或可用。 Ajax調用根據條件設置javascript驗證

$('#user').keyup(function(e) { 
    var check_user=$(this).val(); 
    $.ajax({ 
     type: "POST", 
     url: "ajax.php", 
     data: {check_user:check_user}, 
     success: function(data) 
     { 
      $("#user-result").html(data); 

     } 
    });   
}); 

Ajax.php

if(isset($_POST['check_user'])){  
$class->mqry="AND barcode='".$_POST['check_user']."' "; 
$class->selected_fields=array('this.user_id'); 
$check_user= $class->getTable('users'); 
$class->resetFields(); 
$count=count($check_user); 
if($count) { 
    die('<img src="imgs/not-available.png" />User already exits'); 
}else{ 
    die('<img src="imgs/available.png" />'); 
} 

} 

這東西是怎麼working.Now我可以阻止用戶添加細節了婉集驗證該用戶field.I希望這讓SENCE 。

這裏我只是拿用戶爲例。實際上會有像條形碼等細節...

+0

我正確理解您每次在用戶名輸入字段中按下某個鍵時發送Ajax請求? – myfunkyside

+0

@myfunkyside:是的 – kreya

+0

爲什麼?這似乎有點密集。 –

回答

0

您需要在發送ajax之前使用客戶端驗證 - 如果客戶端驗證通過,然後發送ajax並註冊您的回調。此外,還要在服務器端執行驗證,並且不要僅依賴於客戶端驗證。 Parsleyjs是一種選擇 - 你也可以使用jquery驗證,或者自己推出(可能最好使用一個好的第三方驗證庫)。