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 :

Vérification de l'existence dans une bdd


Sujet :

jQuery

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Points : 47
    Points
    47
    Par défaut Vérification de l'existence dans une bdd
    Bonjour,

    je souhaite vérifier si la chaine qui est rentrée par l'utilisateur appartient bien à ma bdd.
    J'ai créé un fichier php contenant ma requête et j'ai essayé de l'appeler dans mon script mais je dois avoir un problème sur l'appel de ma fonction.

    Voilà le code javascript :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    if(document.formdept)
    {
      var str=document.formdept.dept.value;
      var strim=str.replace(/[^a-z]/gi, '');
      if(strim == "" &&  $('#depart').function({source:'validDept'})!=null)
      {
        alert("Erreur");
        return false;
      }
      else return true;
    }
    Et voilà mon code php :
    Code php : 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
    <?php
    try
    {
        $bdd = new PDO('mysql:host=localhost;dbname=orange', 'root', '');
    }
    catch(Exception $e)
    {
        die('Erreur : '.$e->getMessage());
    }
    $term=$_GET['term'];
    $req=$bdd->prepare('SELECT DISTINCT NomDept FROM test WHERE NomDept= :term');
    $req->execute(array('term' => $term));
    $array = array();
    while($donnees = $req->fetch())
    {
        array_push($array, $donnees['NomDept']);
    }
    echo json_encode($array);
    $req->closeCursor();
    ?>

  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 : 54
    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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $('#depart').function({source:'validDept'})

    C'est sensé faire quoi ça ?

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Points : 47
    Points
    47
    Par défaut
    Pardon c'est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $('#depart').function({source:'validDept.php'})
    C'est sencé appelé mon fichier validDept.php et éxécuté le code que j'ai fourni plus haut

  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 : 54
    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
    Ca ne veut rien dire non plus...
    Étonnamment, function() n'est pas une fonction jQuery !

  5. #5
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Points : 47
    Points
    47
    Par défaut
    Ah d'accord. Pourtant pour mon auto-complétion j'ai appelé mes fichiers exactement comme ça donc je comprends pas vraiment pourquoi sa ne marche pas

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    dans la declaration de l'autocomplete ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    source: function(){ ... }
    avec uen fonction qui interroge la BDD et retourne un array ...

  7. #7
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Points : 47
    Points
    47
    Par défaut
    J'ai essayé ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var trouve = $('#depart').function(){source:'validDept.php'};
    J'ai du mal comprendre vos explications je pense car cela ne fonctionne pas

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    ou est declaré l'autocomplete sur ton element ?

  9. #9
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Points : 47
    Points
    47
    Par défaut
    L'auto-complete n'est pas le sujet de mon post! L'auto-complete je l'ai réalisé avec une autre fonction script qui elle fonctionne très bien. SI j'ai parlé de sa c'est pour expliquer que pour cet autre script, l'appel à ma source est identique à celle que j'ai écrite et fonctionne très bien.
    Ici, la seule chose que je veux c'est appellé mon fichier validDept.php, éxécuté son code, et compararer dans mon script le string str que j'ai défini en récupérant la chaine rentré par l'utilisateur et le string que renvoie mon fichier validDept.php

  10. #10
    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 : 54
    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 ne préfèrerais pas apprendre un peu les bases de jQuery avant d'essayer d'inventer des méthodes ?

  11. #11
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Points : 47
    Points
    47
    Par défaut
    Merci de cette magnifique réflexion mais sa ne m'avance pas. Je suis pour les critiques mais constructive. L'autocomplétion a était faite grâce à jQUery mais là n'est pas la question. Je ne vois pas comment appelé mon fichier et récupérer le tableau, qui d'ailleurs n'aura qu'une seule ligne, et comparer cette valeur dans mon script.

    J'ai essayé le code que j'ai montré précédemment mais sans résultat.

  12. #12
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    source est uen methode de l'autocomplete, si ce n'est pas le sujet de ton post, exprime plus clairement ton besoin, car visiblement je ne suis pas le seul à n'avoir pas compris ...

  13. #13
    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 : 54
    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
    Comme pour tout langage ou tout framework, tu ne peux utiliser avec jQuery que des fonctions qui existent. Te dire de commencer par apprendre les bases me semble donc constructif pour t'éviter d'utiliser des fonctions que tu inventes et qui ne risquent donc pas de fonctionner correctement.

  14. #14
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Points : 47
    Points
    47
    Par défaut
    Je veux créer une fonction qui interroge ma base de données et qui me dit si, le texte rempli par l'utilisateur dans mon formulaire, est dans ma base de données ou non.
    Ex: Si je rentre un nom de département, je veux que ma fonctionne vérifie si ce nom fait partie de ma base de données dans la colonne NomDept

  15. #15
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    donc rien a voir avec source ...

    a quel moment souhaites tu faire la vérification ? au fur et a mesure de la saisie (onkeyup) ou à la fin de la saisie (onblur)
    C'est sur l'uin de ce evenement que tu devras faire une requete ajax (au choix get post ajax ou getJSON) en ciblant une page de traitement php qui interrogera la BDD et retournera une reponse que tu utilisera dans le callback de l'ajax

  16. #16
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Points : 47
    Points
    47
    Par défaut
    La vérification je souhaite la faire à la fin donc il faut que je réalise une fonction sur l'évènement onblur de mon formulaire. Enfin si j'ai bien compris. Sauf que je vois un autre petit souci ou peut-être que ce n'en est pas un. Sur mon formulaire j'ai un script qui vérifie si la chaine de caractère tapé est vide ou non sur l'évènement onClick et donc permet ou non d'envoyer mon formulaire. Est-ce que je ne peux pas modifier le code sur cet évènement pour vérifier si ma string est dans la bdd ?

  17. #17
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 559
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 559
    Points : 21 621
    Points
    21 621
    Par défaut
    Si, bien sûr.

  18. #18
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Points : 47
    Points
    47
    Par défaut
    OK. Par contre je ne connais que la méthode source avec jQuery pour appeler une page php depuis un code javascript. source n'étant pas la bonne solution comment appeler cette page ?

  19. #19
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    onblur du formulaire ou du champs ???

    si c'est avant soumission il suffit de le faire sur le onsubmit du form ...

  20. #20
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Points : 47
    Points
    47
    Par défaut
    C'est effectivement pour controler la soumission de mon formulaire donc je vais passer par l'évènement onClick

Discussions similaires

  1. [PHP 5.3] Une petite verification si un element existe dans la BDD
    Par thebarbarius dans le forum Langage
    Réponses: 4
    Dernier message: 11/04/2010, 11h47
  2. Vérification de répertoire existant dans une boucle
    Par Invité(e) dans le forum Langage
    Réponses: 2
    Dernier message: 10/04/2010, 09h02
  3. script pour vérifier si un champ existe déjà dans une BDD
    Par tomguiss dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 02/02/2009, 13h19
  4. tester l'existance d'une donnée dans une BDD
    Par rpg59 dans le forum C++
    Réponses: 4
    Dernier message: 28/05/2008, 09h30
  5. Vérification de l'existence d'une url dans la BDD en langage JAVA
    Par ohhh.gringo dans le forum Autres langages pour le Web
    Réponses: 1
    Dernier message: 15/05/2007, 17h37

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