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

AJAX Discussion :

[AJAX] Rafraichir 2 span en meme temps


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Janvier 2007
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 425
    Par défaut [AJAX] Rafraichir 2 span en meme temps
    Bonjour,

    J'aimerais que si quelq'un clique sur une icone (favoris) la page se rafraichissait en Ajax et l'utilisateur ne peut pas cliquer une 2eme fois, voila mon code:

    code JS:
    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
     
    <script type="text/javascript">
    function ajax(page,divAMettreAJour){
    if (window.XMLHttpRequest)
      {// code for IE7+, Firefox, Chrome, Opera, Safari
      xmlhttp=new XMLHttpRequest();
      }
    else
      {// code for IE6, IE5
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
     
    xmlhttp.onreadystatechange=function()
      {
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
        document.getElementById(divAMettreAJour).innerHTML=xmlhttp.responseText;
        }
      }
    xmlhttp.open("GET",page,true);
    xmlhttp.send();
    }
    </script>
    code 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
     
    <?php
                    
                    mysql_select_db($db_general) or die ('Erreur de selection de la BD Statistics: '.mysql_error());
                    
                    // on doit verifier si cette video est deja aux favoris de cet utilisateur
                    mysql_select_db($db_general) or die ('Erreur de selection de la BD general: '.mysql_error());
                    $selectipe = 'SELECT ip FROM favorits WHERE ip = "'.$ip_visiteur.'" AND id_cl = "'.$menu.'"';
                    $queryipe = mysql_query($selectipe) OR DIE ('Unable to select comment IPs '.mysql_error());
                    $totalipe = mysql_fetch_array($queryipe);
                    if ($totalipe)
                    {
                            echo 'this video is on your favorits';
                    }
                    else
                    {
                            $sqlf = 'SELECT count(*) FROM favorits WHERE id_cl= "'.$menu.'"';
            //echo $sqlt;  
            $reqf = mysql_query($sqlf) or die('Erreur SQL !<br />'.mysql_error());  
            $dataf = mysql_fetch_array($reqf);  
     
    echo '<img src="'.$path2icons.'coeur.png" onclick="ajax(\'action.php?do=fav&menu='.$menu.'&idm='.$idm.'\', \'fav1\')" class="Img01" align="absmiddle" title="add fav" alt="add fav" /></a>';
    //echo '<span id="fav1">'.$dataf[0].'</span>';                  
                    }
    ?>
    action.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
     
    <?php
    $idfav = $_GET['idfav'];
    $idcat = '4'; // Mariyat
    $id_cl = $_GET['menu'];
    $idpseudo = $_GET['idm'];
     
    mysql_select_db($db_general) or die ('Erreur de selection de la BD general: '.mysql_error());
    //$update = 'UPDATE comments SET '.$th.' = "'.$increment.'" WHERE idc = "'.$idc.'"';
     
            $updatef = 'INSERT INTO favorits VALUES ("", "'.$idcat.'", "'.$id_cl.'", "'.$idpseudo.'", "'.$ip_visiteur.'", "'.$MakkaDateTime.'")';
            //echo $updatef.'<br>';
     
            $queryf = mysql_query($updatef) OR DIE (mysql_error());
     
    $selectf = 'SELECT count(*) FROM favorits WHERE id_cl= "'.$id_cl.'"';
    //echo $selectf.'<br>';
    $resultf = mysql_query ($selectf) or die ('Erreur de selection de commentaires: ' .mysql_error());
    $datafs = mysql_fetch_array($resultf);
    //echo $datafs[0];
    echo 'this video was added succesfully';  
    ?>
    Merci

  2. #2
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    Bonjour,

    Dans la fonction de retour du call Ajax, vous pouvez en profiter pour cacher/bloquer votre bouton.

  3. #3
    Membre éclairé
    Inscrit en
    Janvier 2007
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 425
    Par défaut
    Citation Envoyé par vermine Voir le message
    Bonjour,

    Dans la fonction de retour du call Ajax, vous pouvez en profiter pour cacher/bloquer votre bouton.
    Et comment faire afin de les afficher caches, j'ai procede a un autre exemple:

    comment.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
    31
    32
    33
     
    <head>
    <script type="text/javascript">
    function ajax(page,divAMettreAJour){
    if (window.XMLHttpRequest)
      {// code for IE7+, Firefox, Chrome, Opera, Safari
      xmlhttp=new XMLHttpRequest();
      }
    else
      {// code for IE6, IE5
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
     
    xmlhttp.onreadystatechange=function()
      {
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
        document.getElementById(divAMettreAJour).innerHTML=xmlhttp.responseText;
          }
      }
    xmlhttp.open("GET",page,true);
    xmlhttp.send();
    }
    </script>
     
    </head>
     
    <body>
    echo '<input type="button" id="LikeId" value="Oui" onclick="ajax(\'page.php?thumbs=up&idcom='.$idcom.'&menu='.$menu.'&idm='.$idm.'\',\'up'.$idcom.'\')"/><span id="up'.$idcom.'"> '.$datau[0].' </span>';
    			echo '&nbsp;&nbsp;';
     
    			echo '<input type="button" id="DisLikeId" value="Non" onclick="ajax(\'page.php?thumbs=down&idcom='.$idcom.'&menu='.$menu.'&idm='.$idm.'\',\'down'.$idcom.'\')"><span id="down'.$idcom.'"> '.$datad[0].' </span>';
    </body>
    page.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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
     
    <head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"></script>
    <script>
    $(document).ready(function(){
        $(".VotingButtomClass").click(function()
        {
            var This_id = $(this).attr("id");
            $(this).attr("disabled",true);
        });
    });
    </script>
    </head>
     
    <body>
    <?php
     
    mysql_select_db($db_general) or die ('Erreur de selection de la BD general: '.mysql_error());
    if ($thumbs == 'up')
    {
            $updateu = 'INSERT INTO thumbs VALUES ("", "'.$idcom.'", "'.$idpseudo.'", "1", "0","'.$ip_visiteur.'", "'.$MakkaDateTime.'")';
            //echo $updateu.'<br>';
    $queryu = mysql_query($updateu) OR DIE (mysql_error());
     
    $selects = 'SELECT count(thumbsu) FROM thumbs WHERE idcom= "'.$idcom.'" AND thumbsu !="0"';
    }
     
     
    if ($thumbs == 'down')
    {
            $updated = 'INSERT INTO thumbs VALUES ("", "'.$idcom.'", "'.$idpseudo.'", "0", "1","'.$ip_visiteur.'", "'.$MakkaDateTime.'")';
            //echo $updated.'<br>';
            $queryd = mysql_query($updated) OR DIE (mysql_error());
            
            $selects = 'SELECT count(thumbsd) FROM thumbs WHERE idcom= "'.$idcom.'" AND thumbsd !="0"';
            
    }
     
    echo '<span id="displayhere"></span>';
     
    $results = mysql_query ($selects) or die ('Erreur de thumbsdown: ' .mysql_error());
    $datas = mysql_fetch_array($results);
    //echo $datas[0];
     
    echo '<input type="button" id="LikeId" class="VotingButtomClass" value="Oui"/><span id="up'.$idcom.'"> '.$datas[0].' </span>';
                            echo '&nbsp;&nbsp;';
                             
                            echo '<input type="button" id="DisLikeId" class="VotingButtomClass" value="Non"><span id="down'.$idcom.'"> '.$datas[0].' </span>';
     
    ?>
    le resultat est:


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

Discussions similaires

  1. Envoi de plusieurs requetes AJAX en meme temps
    Par boboss123 dans le forum jQuery
    Réponses: 8
    Dernier message: 28/03/2018, 02h51
  2. [AJAX] appel de plusieurs fonctions en meme temps
    Par caro71ol dans le forum AJAX
    Réponses: 4
    Dernier message: 20/01/2011, 14h27
  3. [AJAX] Changer de page et de css en meme temps
    Par HWICE dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 17/06/2008, 21h32
  4. [C#] Presser 2 touches en meme temps
    Par JBernn dans le forum Windows Forms
    Réponses: 3
    Dernier message: 21/05/2004, 18h11
  5. Plusieurs commandes en meme temps
    Par caribou_belle dans le forum Linux
    Réponses: 7
    Dernier message: 18/09/2003, 17h07

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