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 :

[JQuery] Afficher une image de chargement le temps qu'une requete AJAX se fasse


Sujet :

jQuery

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 8
    Points : 10
    Points
    10
    Par défaut [JQuery] Afficher une image de chargement le temps qu'une requete AJAX se fasse
    Bonjour, je suis actuellement en train de créer un moteur de recherche pour un site. j'utilise AJAX pour vérifier sans actualisation de la page si le terme recherché existe. Donc lorsqu'on entre un mot dans une zone de texte, on sait si ce mot existe dans la base de données. Il s'affiche par conséquent "Aucun résultat trouvé" ou "1 (ou plusieurs) résultat(s) trouvé(s)". Cependant il peut y avoir quelques secondes (max 2 ou 3) avant que la phrase ne s'affiche. j'aimerais que durant ce temps une image de chargement (style ici) s'affiche.
    Voici les différents bouts de code:
    Le formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <select name="place"  >
     <option value="contenant">Contenant... </option>
        <option value="commencant">Commençant par...</option>
     
        <option value="finissant">Finissant par...</option>
       </select>
    <input type="text" size="20" name="pseudo" />  <span class="info"></span>
    Le fichier js inclus dans le <head></head>
    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
     
    $(document).ready(function(){
    $("input").focus(function(){
    var info_form=$(this).next(".info");
    info_form.empty();
    });
    $("input").blur(function(){
       var name=($(this).attr("name"));
       var value=($(this).attr("value"));
       var info_form=$(this).next(".info");
       if(value==undefined)
       {
         info_form.append("<span class='rouge'>Veuillez saisir un terme à rechercher.</span>");
       }
       else if(name=="pseudo")
       {
       	$.ajax({
            type: "GET",
            url: "verif_pseudo.php?pseudo="+value,
            success:function(data){
            if(data==0)
            {
              info_form.append(" <span class='rouge'>Aucun résultat ne correspond à votre recherche \"" + value + "\".</span>");
            }
            else
            {if(data==1){
              info_form.append(' <span class="vert">' + data + ' résultat a été trouvé. <input type="submit" value="Rechercher l\'oiseau ' + value + '"/></span>');}
              else
              {
              	  info_form.append(' <span class="vert">' + data + ' résultats ont été trouvés. <input type="submit" value="Rechercher l\'oiseau ' + value + '"/></span>');
     
              }        }
            }
         });
       }
     
    });	
    });
    Et enfin la page verif_pseudo.php
    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
     
    <?php
    if(isset($_GET["pseudo"]))
    {
    $pseudo=$_GET["pseudo"];
     
    $adresse = 'localhost:8889';
    $nombdd = 'root';
    $motdepasse = 'root';
    $database = 'oiseaux';
    mysql_connect($adresse, $nombdd, $motdepasse) or die (mysql_error());
    mysql_select_db($database) or die (mysql_error());
     
    $pseudo_exist=mysql_query("SELECT * FROM oiseaux WHERE nom='".$pseudo."'") or die (mysql_error());
    $answer = mysql_num_rows($pseudo_exist);
    if($answer>0)
    {
    echo "1";
    }
    else
    {
    echo "0";
    }
    mysql_close();
    }
    else
    {
    echo "non non !";
    }
    ?>
    Merci beaucoup d'avance.

  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
    Tu utilises apparemment jQuery pour tes requêtes. Il existe une option beforeSend qui permet d'effectuer une action avant le lancement de la requête, tu peux t'en servir pour ajouter un loader sur ta page à ce moment et le cacher dans le callback success
    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

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

Discussions similaires

  1. Une image en session ou comment renvoyer une image sur une page
    Par a tunar with no tune dans le forum Spring
    Réponses: 1
    Dernier message: 26/01/2012, 09h02
  2. Réponses: 3
    Dernier message: 18/11/2011, 10h19
  3. afficher une image pendant un certain temps sur une page
    Par fraizas77 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 16/06/2009, 16h53
  4. [MySQL] Afficher une image d'un champ blob d'une base MySQL
    Par lolobedo dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 29/11/2005, 10h10
  5. Afficher une image JPG qui se trouve dans une bdd
    Par Harry dans le forum Bases de données
    Réponses: 6
    Dernier message: 27/02/2004, 10h51

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