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] Ajax firefox 3


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de kernigansnotdead
    Homme Profil pro
    Traducteur technique anglais > français indépendant
    Inscrit en
    Septembre 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Traducteur technique anglais > français indépendant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 77
    Par défaut [AJAX] Ajax firefox 3
    Bonjour,

    voila, j'utilise ajax sur mon site(php) afin de recharger un div dynamiquement tous les X secondes.
    Dans le div je fais juste un echo de la date et de l'heure, et :

    sur IE 7, tout fonctionne impécablement, meme si je règle SetTimeout à 1000 ms, l'heure se met à jour sans que la page saute ou quoi que ce soit, tout est parfait.

    Sur Firefox 3....
    La page saute(effet visuel de sautillement) ensuite le l'affiche de l'heure paraît bizzare, comme s'il y avait un chevauchement entre date() de php et les fonctions javascript appelées, et ensuite la l'affichage de la date s'éclaircie, Firefox d'enmêle les pinceaux et le processor donne l'impression de prendre de la vitesse.

    Voici mon code :
    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
     
    <html>
    <head>
    <script type="text/javascript">
    function Ajax(){
    	var xmlHttp;
    	if (window.XMLHttpRequest){xmlHttp=new XMLHttpRequest();}
    	else if (window.ActiveXObject){xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");}
    	else{alert("Your browser does not support XMLHTTP!");}
     
    	xmlHttp.onreadystatechange=function(){document.getElementById('my_div').innerHTML=xmlHttp.responseText;setTimeout('Ajax()',5000);}
    	xmlHttp.open("GET","fichier.php"+ "?random=" + Math.random(),true);
    	//xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    	xmlHttp.send(null); 
    }
    window.onload=function(){setTimeout('Ajax()',5000);}
    </script>
     
    </head>
    <body>
     
    <div id="my_div">
    <?php
    $now2=date("Y-m-d H:i:s");
    echo $now2;
    ?>
    </div>
     
     
    </body>
    </html>
    Y'a t'il quelquechose qui ne va pas dans mon code?

    Merci pour vôtre aide,
    knd

  2. #2
    Membre Expert
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 56

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Par défaut
    Salut,
    Il faut tester les codes de retour car sinon c'est une mise à jour erronée qui a lieu.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    xmlHttp.onreadystatechange=function(){
        if (xmlHttp.readyState == 4) {
            if (xmlHttp.status == 200) {
                document.getElementById('my_div').innerHTML=xmlHttp.responseText;
                setTimeout('Ajax()',5000);
            }
            else {
                alert("Erreur HTTP");
            }
        }
      };
    ERE

  3. #3
    Membre confirmé Avatar de kernigansnotdead
    Homme Profil pro
    Traducteur technique anglais > français indépendant
    Inscrit en
    Septembre 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Traducteur technique anglais > français indépendant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 77
    Par défaut
    Effectivement, ça marche parfaitement sur Firefox 3 et même sur google chrome. Donc merci beaucoup pour ton aide.

    Je me demandais par ailleurs, quand je règle le timeout à 1 ms, tout fonctionne parfaitement bien, mais est-ce que cela ne risque pas de créer des problèmes? surtout si le code qui est raffraîchit attaque lui même une base mysql par un select.

    knd

  4. #4
    Membre Expert
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 56

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Par défaut
    Citation Envoyé par kernigansnotdead Voir le message
    Effectivement, ça marche parfaitement sur Firefox 3 et même sur google chrome. Donc merci beaucoup pour ton aide.

    Je me demandais par ailleurs, quand je règle le timeout à 1 ms, tout fonctionne parfaitement bien, mais est-ce que cela ne risque pas de créer des problèmes? surtout si le code qui est raffraîchit attaque lui même une base mysql par un select.
    knd
    Il faut faire preuve de raison: le script fait l'aller-retour avec le server,et les temps d'accès en local sont différents de ceux à distance. Donc une exécution d'au moins 1 à 5 secondes est logique.

    Bon dev,

    ERE

  5. #5
    Membre confirmé Avatar de kernigansnotdead
    Homme Profil pro
    Traducteur technique anglais > français indépendant
    Inscrit en
    Septembre 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Traducteur technique anglais > français indépendant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 77
    Par défaut
    Vu comme ça cela me paraît raisonnable.
    Merci beaucoup pour toute ton aide,

    knd

  6. #6
    Membre Expert
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 56

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Par défaut
    Citation Envoyé par kernigansnotdead Voir le message
    Vu comme ça cela me paraît raisonnable.
    Merci beaucoup pour toute ton aide,

    knd
    De rien, bonne nuit
    Et si tu dois continuer avec AJAX, n'oublie qu'il existe d'excellents tutoriaux sur developpez.com !

    Bon dev,

    ERE

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

Discussions similaires

  1. [AJAX] Ajax sous Firefox 3
    Par seb55555 dans le forum Général JavaScript
    Réponses: 23
    Dernier message: 18/08/2008, 17h06
  2. [AJAX] Ajax et firefox
    Par microbulles dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 04/01/2008, 23h12
  3. [AJAX] Ajax et firefox
    Par skyangel20 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 30/09/2007, 14h58
  4. [AJAX] ajax sous firefox.
    Par nek_kro_kvlt dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/05/2007, 16h13
  5. [AJAX] AJAX ou Firefox ?
    Par stela86 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/04/2006, 11h32

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