IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

AJAX jQuery : ma requête pour verifier presence email retourne toujours vrai.


Sujet :

jQuery

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 218
    Points : 111
    Points
    111
    Par défaut AJAX jQuery : ma requête pour verifier presence email retourne toujours vrai.
    Bonjour,

    je suis a bout, c'est ma première expérience avec AJAX et je rencontre des soucis, voyez par vous même :
    Le site ici

    Cliquez sur INFOS, puis faites semblant de vous inscrire :

    l'email non disponible : marc@yopmail.com
    email disponible : tous les autres

    le problème : la requête ajax me dit que tous les mails ne sont pas disponibles (oh le menteur)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    pic1 = new Image(16, 16); 
    pic1.src = "images/chargement1.gif";	
    		$(document).ready(function(){
     
    $("#email").change(function() { 
     
    var eml = $("#email").val();
     
    if(eml.length >= 3)
    {
    	$("#status").html('<img src="images/chargement1.gif" >&nbsp;Vérification de la disponibilité...');
     
    		$.ajax({  
    		type: "POST",  
    		url: "validerEmail.php",  
    		data: "email="+ eml,  
    		success: function(msg){  
     
    		$("#status").ajaxComplete(function(event, request, settings){ 
     
    		if(msg == 'OK')
    			{ 
    				$("#email").removeClass('object_error'); // if necessary
    				$("#email").addClass("object_ok");
    				$(this).html('&nbsp;<img src="images/accept.png" align="absmiddle"> <font color="Green"> E-mail disponible </font>  ');
    			}  
    		else  
    			{  
    				$("#email").removeClass('object_ok'); // if necessary
    				$("#email").addClass("object_error");
    				$(this).html('&nbsp;<img src="images/cross.png" align="absmiddle"> <font color="Red"> E-mail non disponible </font>  ');
    			}  
     
    		});
     
    	} 
     
      }); 
     
    }
    else
    	{
    		$("#status").html('<font color="red">The username should have at least <strong>3</strong> characters.</font>');
    		$("#email").removeClass('object_ok'); // if necessary
    		$("#email").addClass("object_error");
    	}
     
    });
     
    });
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <?php
     
    // This is a sample code in case you wish to check the username from a mysql db table
     include ("/_connexionlocal.php");
     
    if(isSet($_POST['email']))
    {
    $email = $_POST['email'];
     
     
    $sql = mysql_query("SELECT email FROM utilisateurs WHERE email='$email'");
    if(mysql_num_rows($sql))
    {
    echo '<font color="red">L\'email rempli : <STRONG>'.$email.'</STRONG> est déjà présent.</font>';
    }
    else
    {
    echo 'OK';
    }
     
    }
     
    ?>

    Je vous remercie d'avance
    de l'aide précieuse pour me débloquer

    2ème question : comment faire pour que tant que l'email rentrée est non disponible, refuser l'envoi du formulaire (sachant que j'ai déjà d'autres test JS et PHP).

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Salut,

    je pense qu'en modifiant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(isSet($_POST['email']))
    en
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(isset($_POST['email']))
    ça t'évitera de passer systématiquement dans le else
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 218
    Points : 111
    Points
    111
    Par défaut
    ah tout ca pour une histoire de casse !!
    merci bovino

    ... et bien non ca ne fonctionne pas, cette fois ci on passe dans le test (car on vois que le checking dure plus longtemps) mais on retourne toujours indisponible

    (je travaille sur la version locale, donc vous affolez pas si vous voyez toujours le 'isSet')

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Voici ce que renvoie ta requête :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <br />
    <b>Warning</b>:  main(/_connexionlocal.php) [<a href='function.main'>function.main</a>]: failed to open stream: No such file or directory in <b>/homez.136/gamercer/www/validerEmail.php</b> on line <b>4</b><br />
    <br />
    <b>Warning</b>:  main() [<a href='function.include'>function.include</a>]: Failed opening '/_connexionlocal.php' for inclusion (include_path='.:/usr/local/lib/php') in <b>/homez.136/gamercer/www/validerEmail.php</b> on line <b>4</b><br />
    <br />
    <b>Warning</b>:  mysql_query() [<a href='function.mysql-query'>function.mysql-query</a>]: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in <b>/homez.136/gamercer/www/validerEmail.php</b> on line <b>11</b><br />
    <br />
    <b>Warning</b>:  mysql_query() [<a href='function.mysql-query'>function.mysql-query</a>]: A link to the server could not be established in <b>/homez.136/gamercer/www/validerEmail.php</b> on line <b>11</b><br />
    <br />
    <b>Warning</b>:  mysql_num_rows(): supplied argument is not a valid MySQL result resource in <b>/homez.136/gamercer/www/validerEmail.php</b> on line <b>12</b><br />
    OK
    Donc c'est sûr que si tu ne récupère pas correctement tes identifiants de connexion, ça marche moins bien
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 218
    Points : 111
    Points
    111
    Par défaut
    en fait, bovino il est vrai que j'ai mal renseigné la connexion sur mon serv OVH, cepandant en local ça marche
    (il y a bien inscription dans ma BDD, donc c'est bien qu'il a connexion réussie :p)

    Alors 'supposons' que ma connexion marche aussi parfaitement qu'en local ... ou peut situer le problème, au niveau de la réponse renvoyée?

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 218
    Points : 111
    Points
    111
    Par défaut
    le soucis c'est que je suis au sein de mon établissement et j'ai énormément de mal a acceder a mon ftp ovh (too many connection from your ip).

    Il faudra me croire sur parole pour essayer de résoudre mon soucis

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 218
    Points : 111
    Points
    111
    Par défaut
    c'est bon, tout est fonctionnel sur www.gamer-certified.fr pour que vous vérifiez

    cepandant, malgrès le isset, cela ne marche toujours pas ....

  8. #8
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Tu as testé :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = mysql_query("SELECT email FROM utilisateurs WHERE email='".$email."'");
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 218
    Points : 111
    Points
    111
    Par défaut
    affirmatif grand chef !

    je viens de tester et j'ai même tester
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = mysql_query("SELECT email FROM utilisateurs WHERE email='anxious333@orange.fr'");
    et évidemment tous les autres emails ne fonctionnement pas quand même

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 218
    Points : 111
    Points
    111
    Par défaut
    problème résolu, je sais pas si je le dit ici, mais bon ca pourra peut être servir a des gens :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
     
    <?php
     $host = "localhost"; // host sql 
     $user = "root"; //  identifiant
     $pass = ""; // password
     $bdd = "gamercertified"; // nom BDD
     
     $conect = @mysql_connect($host,$user,$pass)
     or die("Connection impossible");
     $select = @mysql_select_db("$bdd")
     or die("Connection impossible a la base de données");
    mysql_query("SET NAMES 'utf8'");
    ?>
    ne mettez pas la déclaration du doctype.... sinon votre script va bien vous retourner la valeur souhaité, mais avec le doctype devant.... donc evidemment, ca fait tout foirer.

    erreur bête.... comme la majeur partie des erreures.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Qt WebKit] Requête Ajax avec JQuery pour charger un fichier XML
    Par Maxbester dans le forum Moteurs Web
    Réponses: 0
    Dernier message: 17/12/2012, 13h42
  2. [ZF 1.9] Ajax(jQuery) - Doctrine - Zend - Requête Ajax vide
    Par Ibuprofène dans le forum Zend Framework
    Réponses: 1
    Dernier message: 31/08/2010, 09h53
  3. Réponses: 1
    Dernier message: 20/10/2009, 21h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo