Rumah >pangkalan data >tutorial mysql >Mengapa jQuery Saya Mengesahkan Kaedah Jauh Sentiasa Gagal Apabila Menyemak Ketersediaan Nama Pengguna?
Dalam soalan ini, pengguna cuba mengesahkan kewujudan nama pengguna menggunakan kaedah jauh jQuery.validate. Walau bagaimanapun, mereka menghadapi isu di mana pengesahan sentiasa gagal, walaupun nama pengguna tidak diambil.
jQuery: $("#signupForm").validate({ rules: { username: { required: true, minlength: 3, remote: "check-username.php" } }, messages: { username: { remote: "This username is already taken! Try another." } } }); check-username.php: <?php require_once "./source/includes/data.php"; header('Content-type: application/json'); $name = mysql_real_escape_string($_POST['username']); $check_for_username = mysql_query("SELECT username FROM mmh_user_info WHERE username='$name'"); if (mysql_num_rows($check_for_username) > 0) { $output = true; } else { $output = false; } echo json_encode($output); ?>
Kod asal menggunakan alat kawalan jauh kaedah tidak betul, kerana ia sentiasa dikembalikan benar, menunjukkan bahawa nama pengguna adalah diambil.
Pengguna menyelesaikan isu dengan mengemas kini kod PHP mereka seperti berikut:
<?php require_once "./source/includes/data.php"; header('Content-type: application/json'); $request = $_REQUEST['username']; $query = mysql_query("SELECT * FROM mmh_user_info WHERE username ='$username'"); $result = mysql_num_rows($query); if ($result == 0) { $valid = 'true'; } else { $valid = 'false'; } echo $valid; ?>
Kod PHP yang dikemas kini:
Atas ialah kandungan terperinci Mengapa jQuery Saya Mengesahkan Kaedah Jauh Sentiasa Gagal Apabila Menyemak Ketersediaan Nama Pengguna?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!