Question

J'ai des problèmes en utilisant AJAX et PHP. Ce que j'essaie de faire, c'est appeler une fonction ajax qui saisit une valeur à partir de l'entrée d'un formulaire et vérifie si cet e-mail existe dans une base de données. Voici mon javascript actuel:

//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!");
}

Malheureusement, je ne peux pas faire partir mon alerte. Dans ma fonction PHP, il vérifie si l'entrée est un nom d'utilisateur ou un e-mail (juste pour mes besoins, et donc vous le savez), puis il le recherche dans l'une ou l'autre colonne. S'il le trouve, il renvoie true, et sinon, il renvoie 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;
        }
    }

}

Mon problème est donc de savoir comment AJAX réagit-il à ces rendements et comment faire fonctionner Ajax en conséquence? Principalement, pourquoi cela ne fonctionne-t-il pas?

Toute aide est fortement appréciée. Merci!

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top