jQuery Sahkan Kaedah Jauh untuk Semak Ketersediaan Nama Pengguna
Dengan jQuery Validate, anda boleh mengesahkan jika nama pengguna sudah wujud dalam pangkalan data anda menggunakan alat kawalan jauh kaedah. Berikut ialah contoh:
jQuery:
$("#signupForm").validate({ rules: { username: { required: true, minlength: 3, remote: { url: "check-username.php", type: "post" } } }, messages: { username: { remote: "This username is already taken! Try another." } } });
check-username.php:
<?php header('Content-type: application/json'); $username = $_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; ?>
Apabila pengguna memasukkan nama pengguna mereka, jQuery akan menghantar permintaan untuk menyemak nama pengguna.php dengan nama pengguna. Skrip PHP akan menyemak sama ada nama pengguna wujud dalam pangkalan data. Jika ia berlaku, ia akan mengembalikan palsu, menunjukkan bahawa nama pengguna telah diambil. Jika tidak, ia akan kembali benar.
Walau bagaimanapun, dalam kod yang diberikan oleh pengguna, ralat berlaku apabila cuba menyemak sama ada nama pengguna itu wujud. Ralat berpunca daripada baris:
$check_for_username = mysql_query("SELECT username FROM mmh_user_info WHERE username='$name'");
Daripada menggunakan mysql_query, anda harus menggunakan pernyataan yang disediakan untuk menghalang serangan suntikan SQL:
$stmt = $mysqli->prepare("SELECT username FROM mmh_user_info WHERE username=?"); $stmt->bind_param("s", $name);
Skrip PHP tetap akan kelihatan seperti ini :
execute()) { $stmt->store_result(); if ($stmt->num_rows() > 0) { $output = true; } else { $output = false; } } else { $output = false; } $stmt->close(); $mysqli->close(); echo json_encode($output); ?>
Skrip ini kini harus menyemak dengan tepat sama ada nama pengguna wujud dalam pangkalan data dan mengembalikan respons yang betul kepada jQuery Sahkan.
Atas ialah kandungan terperinci Bagaimana Menggunakan Kaedah Jauh jQuery Validate untuk Semak Ketersediaan Nama Pengguna?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!