ajaxとphpの使用に問題があります。私がやろうとしているのは、フォームの入力から値を取得するajax関数を呼び出し、その電子メールがデータベースに存在するかどうかを確認することです。これが私の現在のJavaScriptです:
//Checks for Existing Email
function checkExisting_email() {
$.ajax({
type: 'POST',
url: 'checkExist.php',
data: input
});
emailExists = checkExisting_email();
//If it exists
if (emailExists) {
alert("This email already exists!");
}
残念ながら、アラートを鳴らすことができません。私のPHP関数では、入力がユーザー名か電子メールかをチェックし(私の目的のためだけで、ご存知のとおり)、どちらかの列でそれを探します。見つかった場合はtrueを返し、見つからなかった場合はfalseを返します。
include ('func_lib.php');
connect();
check($_POST['input']);
function check($args)
{
$checkemail = "/^[a-z0-9]+([_\\.-][a-z0-9]+)*@([a-z0-9]+([\.-][a-z0-9]+)*)+\\.[a-z]{2,}$/i";
if (!preg_match($checkemail, $args)) {
//logic for username argument
$sql = "SELECT * FROM `users` WHERE `username`='" . $args . "'";
$res = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($res) > 0) {
return true;
} else {
return false;
}
} else {
//logic for email argument
$sql = "SELECT * FROM `users` WHERE `email`='" . $args . "'";
$res = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($res) > 0) {
return true;
} else {
return false;
}
}
}
だから私の問題は、ajaxがこれらのリターンにどのように応答するのか、そしてそれに応じてajaxを機能させるにはどうすればよいのかということです。主に、なぜこれが機能しないのですか?
どんな助けでも大歓迎です。ありがとうございました!