2009-08-17 28 views
5

tôi biết rằng điều này là có thể nhưng tôi đang bối rối như thế nào nó hoạt động. Tôi đã được tìm kiếm trực tuyến như thế nào nó được thực hiện và tôi nghĩ rằng tôi đang thiếu một cái gì đó trong quá trình nàyjQuery kiểm tra cơ sở dữ liệu mysql nếu tên người dùng đã được chụp

tôi có mã này jQuery cho đến nay:

$("#Contact_Info").validate({ 
     rules: { 
      username: { 
       required: true, 
       minlength: 6, 
       remote: "check-username.php" 
       } 
      }, 
     messages: { 
      username:{ 
       remote: "This username is already taken! Try another." 
      } 
     } 
    }); 

Làm thế nào tôi nên viết trang php của tôi để làm cho nó nói chuyện với mã jQuery?

Cho đến nay tôi có:

$name = mysql_real_escape_string($name); 

$query = "SELECT USERNAME FROM T_MEMBER WHERE USERNAME='$name';"; 
$res = mysql_query($query); 
if (mysql_num_rows($res) > 0) { 
    return false; 
} else 
    return true; 

Làm thế nào để biến $ name từ javascript? Tôi có phải đặt "từ xa" thành POST không?

Cảm ơn trước, Ian McCullough

Trả lời

4

Trang PHP của bạn giao tiếp ngược lại Javascript chỉ thông qua xuất dữ liệu. Tùy thuộc vào các plugin, bạn có thể đạt được một true/false bởi lặp lại 1 hoặc 0, hoặc thậm chí chuỗi true hoặc false

Sổ tay nói:

Câu trả lời được đánh giá là JSON và phải true cho các yếu tố có giá trị, và có thể là bất kỳ false, undefined or null cho các yếu tố không hợp lệ

vì vậy, bạn có thể thay đổi PHP của bạn như thế này:

if (mysql_num_rows($res) > 0) { 
    $output = true; 
} else { 
    $output = false; 
} 
echo json_encode($output); 
+0

cảm ơn! tôi đã thiếu json_encode(); –

Các vấn đề liên quan