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

JavaScript Discussion :

[AJAX] Est-il possible de mettre à jour une bd lorsque la zone de texte perd le focus ?


Sujet :

JavaScript

  1. #1
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : mars 2004
    Messages : 3 610
    Points : 1 315
    Points
    1 315
    Par défaut [AJAX] Est-il possible de mettre à jour une bd lorsque la zone de texte perd le focus ?
    Bonjour tout le monde,

    J'ai un tableau dans ma page web qui contient plusieurs lignes composées chacune de 5 colonnes (dont une cachée).

    La dernière colonne contient une zone de texte qui peut être modifiée par le visiteur.

    J'aimerais juste savoir si il serait possible avec AJAX de mettre à jour automatiquement la base de données mysql lorsque la zone de texte perd le focus ?

    Si oui, pensez-vous qu'au niveau ressource ça diminuerait le programme ?

    Sauriez-vous me mettre sur une piste pour savoir comment je peux commencer ce travail ?

    Je présume que j'utilise quand même l'ID caché pour mettre à jour la bd ?

    Si vous avez un exemple de code, je suis preneur.

    J'ai maintenant un meilleur niveau en AJAX, je suis capable de lier plusieurs listes déroulantes et même d'afficher des étudiants dans un tableau par rapport aux choix de ces listes.

    Merci d'avance.

    beegees

  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 : 51
    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 423
    Points
    91 423
    Billets dans le blog
    20
    Par défaut
    Tu peux lancer ta requête sur l'événement onblur de ton input.
    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
    Expert confirmé
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : avril 2008
    Messages : 2 652
    Points : 4 164
    Points
    4 164
    Par défaut
    Si oui, pensez-vous qu'au niveau ressource ça diminuerait le programme ?
    A priori non, ajax est fait pour ça, dans la mesure où tes requêtes sont bien asynchrones et que tu récupères une somme de données "raisonnable" (pas l'encyclopédie universalis en 115 langues).
    Mais effectivement, en terme d'ergonomie, ça serait pas mal comme toujours d'imaginer un petit indice visuel indiquant à l'internaute que la requête ajax est en cours (un petit "spinner", un texte "mise à jour en cours" quelque part, etc.)

    ...pour les linguistes et les curieux >>> générateur de phrases aléatoires

    __________________

  4. #4
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : mars 2004
    Messages : 3 610
    Points : 1 315
    Points
    1 315
    Par défaut
    Citation Envoyé par Bovino Voir le message
    Tu peux lancer ta requête sur l'événement onblur de ton input.
    Bovino, bonjour,

    Merci pour ta réponse.

    Le point de départ est en effet le onblur de ma zone de texte.

    Merci pour ta réponse.

    beegees

    Citation Envoyé par RomainVALERI Voir le message
    A priori non, ajax est fait pour ça, dans la mesure où tes requêtes sont bien asynchrones et que tu récupères une somme de données "raisonnable" (pas l'encyclopédie universalis en 115 langues).
    Mais effectivement, en terme d'ergonomie, ça serait pas mal comme toujours d'imaginer un petit indice visuel indiquant à l'internaute que la requête ajax est en cours (un petit "spinner", un texte "mise à jour en cours" quelque part, etc.)
    Romain, rebonjour,

    Merci pour tes explications.

    Tu me parles de "spinner".

    J'aimerais en fait mettre à jour la bd à chaque fois qu'une zone de texte perd le focus ET que cette zone de texte a été modifiée.

    Pour tester si elle a été modifiée, j'ai mis un petit problème (voir poste http://www.developpez.net/forums/d67...t/#post3969027)

    Avez-vous un exemple de code qui montre comment faire pour mettre à jour une bd mysql avec ajax ?

    Un tout grand merci à vous deux.

    beegees

  5. #5
    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 : 51
    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 423
    Points
    91 423
    Billets dans le blog
    20
    Par défaut
    J'aimerais en fait mettre à jour la bd à chaque fois qu'une zone de texte perd le focus ET que cette zone de texte a été modifiée.
    Cela correspond à l'événement onchange d'un champ texte.
    Avez-vous un exemple de code qui montre comment faire pour mettre à jour une bd mysql avec ajax ?
    Il n'y a rien de particulier. C'est comme une mise à jour sans Ajax...
    Ajax te permet d'appeler une page sur le serveur (dans ton cas, une page PHP), dans cette page, tu te connectes à ta base normalement, tu récupères les données GET ou POST normalement, tu mets à jour ta base avec des requêtes mySQL éventuellement, tu renvoies un message vers le navigateur et le tour est joué !
    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

Discussions similaires

  1. [MySQL] Mettre à jour une donnée lorsqu'une autre se met à jour
    Par geeksfaction dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 26/02/2017, 07h03
  2. est-il possible de mettre à jour un descriptif jnlp par jnlp?
    Par professeur shadoko dans le forum JWS
    Réponses: 1
    Dernier message: 14/01/2011, 16h23
  3. [AC-2007] Est-il possible de mettre à jour du code VBA sans rentrer dedans ?
    Par tibofo dans le forum VBA Access
    Réponses: 5
    Dernier message: 26/10/2010, 19h50
  4. Réponses: 6
    Dernier message: 21/10/2009, 18h39
  5. Réponses: 1
    Dernier message: 20/09/2007, 16h15

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