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] rafraichissement ne fonction pas explorer


Sujet :

JavaScript

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2004
    Messages : 514
    Points : 107
    Points
    107
    Par défaut [AJAX] rafraichissement ne fonction pas explorer
    Bonjour voici mon petit probléme que j'ai mon rafraichissement d'un ligne de code de fonction pas sur explorer , mes fonction sur firefox.

    Seriez vous m'eclairez la dessus ou me donnée une autre solutions a mon probléme merci

    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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    <?php
    @session_start();
    ?>
    <html>
    <title>Belnuance</title>
    <head>
    <script language="javascript" type="text/javascript">
    nom_de_la_page='recumessagechat.php';
    var xhr=null;
    function rafraichir() {
            if (window.XMLHttpRequest) xhr = new XMLHttpRequest();
            else if (window.ActiveXObject) xhr = new ActiveXObject('Microsoft.XMLHTTP');
            else alert('JavaScript : votre navigateur ne supporte pas les objets XMLHttpRequest...');
            xhr.open('GET',nom_de_la_page,true);
            xhr.onreadystatechange = ajaxReponse;
            xhr.send(null);
    }
     
    function ajaxReponse() {
            if (xhr.readyState == 4) {
                    document.getElementById('droite').innerHTML=xhr.responseText;
                    var timer=setTimeout("rafraichir()",3000);
            }
    }
    rafraichir();
    </script>
    </head>
    <style>
    #droite {
    position:relative;
    }
    </style>
    <body onLoad="charge();">
    <?php
     
    if (!isset($_SESSION['login'])) {
        
            echo "<script language=\"JavaScript\">
            setTimeout(\"window.location='index.php'\",0); // delai en millisecondes
            </script>";
        exit();
    }
    //Fichier necessaire
    require_once'../include/connexion.inc';
     
    //Verifie si on s'est connecte a l'espace membre
    $pseudom=$_SESSION["login"];
    $pass=md5($_SESSION["pass_md5"]);
    $sql = "SELECT * FROM fk_membres WHERE login='$pseudom' and pass_md5='$pass'";
    $nb_mess = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
     
            $nb_mess = mysql_query("SELECT id_chat,open FROM chatonline WHERE dest='$pseudom' GROUP BY open ") or die (mysql_error());
            while($ligne = mysql_fetch_array ($nb_mess)){ 
            $id_chat = $ligne['id_chat'];
            $open = $ligne['open'];
            if($open==0)
            { 
        } 
            if($open==0)
            {
        echo"<div id=\"droite\" align=\"center\"><a href=\"#\" onClick=\"window.open('../chat/messachat1.php?id_chat=$id_chat','_blank','toolbar=0, location=0, directories=0, status=0, scrollbars=1, resizable=0, copyhistory=0, menuBar=0, width=400, height=200, right=1, top=0');return(false)\"><img src=\"../design/Mrecu.gif\" width=\"100\" height=\"15\" border=\"0\" title=\"Message reçu\"></a></div>";
        }
     
        }
    ?>
    </body>
    </html>

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2007
    Messages : 247
    Points : 276
    Points
    276
    Par défaut
    slt,

    la déclaration de xhr n'est pas complète :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    try{ xhr = new ActiveXObject("Microsoft.XMLHTTP");}
    	catch(e){
    		try{ xhr = new ActiveXObject("Msxml2.XMLHTTP");}
    		catch(e){
    			try{ xhr = new XMLHttpRequest();}
    			catch(e){ xhr = false;}
    			}
    		}
    Conception et hébergement de votre site Web : http://www.jvprod.fr !

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2004
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    je voix pas du tous je suis legerement perdu avec l'ajax a vrai dire???

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2007
    Messages : 247
    Points : 276
    Points
    276
    Par défaut
    slt,

    selon la version de IE, xhr ne se déclare pas de la même manière ;-) peut être que cela vient de là... teste et dis nous
    Conception et hébergement de votre site Web : http://www.jvprod.fr !

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2004
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    merci de test réponse je voix pas bien comment et ou tu place la partie de ton script sur le miens je suis un peux perdu la?? j'ai creuser le crane pour trouver deja cela. saurait tu m'aidé stp?

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2007
    Messages : 247
    Points : 276
    Points
    276
    Par défaut
    slt,

    les lignes que je t'ai données sont à mettre à la place des 3 premières lignes de "rafraichir"
    Conception et hébergement de votre site Web : http://www.jvprod.fr !

  7. #7
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2004
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    comme cela alors

    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
    nom_de_la_page='recumessagechat.php';
    var xhr=null;
    function rafraichir() {
            if (window.XMLHttpRequest) try{ xhr = new ActiveXObject("Microsoft.XMLHTTP");}
    	catch(e){
    		try{ xhr = new ActiveXObject("Msxml2.XMLHTTP");}
    		catch(e){
    			try{ xhr = new XMLHttpRequest();}
    			catch(e){ xhr = false;}
    			}
    		}
            else alert('JavaScript : votre navigateur ne supporte pas les objets XMLHttpRequest...');
            xhr.open('GET',nom_de_la_page,true);
            xhr.onreadystatechange = ajaxReponse;
            xhr.send(null);
    }

  8. #8
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2004
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Cela fonction maintenant sous explorer mes je tombe sur un autre pobléme; je doit réactualiser mon navigateur aussi bien explorer que firefox pour faire apparaitre message reçu , je me suis dans la panade

    merci sorry de t'ennuier avec cela

  9. #9
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2007
    Messages : 247
    Points : 276
    Points
    276
    Par défaut
    slt,

    supprime le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(window.XMLHttpRequest)
    et remplace ton par
    Conception et hébergement de votre site Web : http://www.jvprod.fr !

  10. #10
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2004
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Merci super sous fierfox cela fonction genial, sous explorer toujours la même chose c'est du windows cela ce vois il complique . cela ne fonction toujours pas .

    di une chose tant que tu est la pour rafraichier une iframe je devrais changer quoi au juste dans mon code

  11. #11
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2007
    Messages : 247
    Points : 276
    Points
    276
    Par défaut
    slt,

    ca ne marche jamais sous IE ou pas tout le temps ? c'est peut être dû à un problème de mise en cache... dans ce cas il suffit d'ajouter à l'url une variable (un nombre) aléatoire...

    pour la deuxième question : dans ta fonction callback (ajaxReponse), tu remplaces :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('droite')
    par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.frame['id_de_ta_frame']
    => vérifie quand même si c'est bien par "window.frame" que l'on accède à une frame...
    Conception et hébergement de votre site Web : http://www.jvprod.fr !

  12. #12
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2004
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    bonjour cela fonction maintenant avec l'interdition de mettre en cache.

    Maintenant j'ai un autre soucis ;-) avec celui-ci normalement je devrais voir defiler mes message mes je ne voix qu'un seule a la fois ????

    voici le 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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    <?php session_start(); ?>
    <html>
    <title>Dialogue-Priver</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <head>
    <style>
    #recu{
    position:absolute;
    background-color:#00FFCC;
    overflow:scroll;
    width: 380px;
    height:100px;
    border:#00FF33;
    }
    #envois{
    position:absolute;
    background-color:#00FFCC;
    width: 380px;
    height:180px;
    border:#00FF33;
    top:140px;
    }
    </style>
    <script language="javascript" type="text/javascript">
     
    function writediv(texte)
    {
     document.getElementById('recu').innerHTML = texte;
    }
    function file()
    {
     if(window.XMLHttpRequest) // FIREFOX
        xhr_file = new XMLHttpRequest();
        else if(window.ActiveXObject) // IE
             xhr_file = new ActiveXObject("Microsoft.XMLHTTP");
        else
             return(false);
     
     var fichier = "messachat12.php";
        xhr_file.open("POST", fichier, false);
        xhr_file.send(null);
        if(xhr_file.readyState == 4){
      writediv(xhr_file.responseText);
     }
        else {
      return(false);
     }
     boucle = setTimeout("file()", 3000);
    }
     
    </script>
    </head>
    <body>
    <?php
    if (!isset($_SESSION['login']) && !isset($_SESSION['user'])) {
     
         echo "<script language=\"JavaScript\">
    	setTimeout(\"window.location='index2.php'\",0); // delai en millisecondes
    	</script>";
        exit();
    }
    require_once'../include/connexion.inc';
     
     
    $id_chat=$_GET['id_chat'];
    mysql_query("UPDATE chatonline SET open='1' WHERE id_chat='$id_chat' AND dest='".$_SESSION['login']."'") or die (mysql_error());
     
    $chat = mysql_query("SELECT expe,messy FROM chatonline WHERE dest='".$_SESSION['login']."' ORDER BY id_chat ASC") or die (mysql_error());
     
     
    ///////////////lecture message/////////////////////////////////////////////////////////
    while($row= mysql_fetch_array($chat)){
    	  $env_mess=$row['expe'];
    	  $message_mess=$row['messy'];
     
    echo"<div id='recu'><left><b>$env_mess :</b>";
    echo" => $message_mess </left><br /></div></td></tr>";
    }
     
    ////// conversation avec le message envoyez/////////////////////////////////////////////////
    echo"<tr><td>";

  13. #13
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2007
    Messages : 247
    Points : 276
    Points
    276
    Par défaut
    slt,

    dans la partie php, "lecture message" est censé t'afficher les messages postés ?
    Conception et hébergement de votre site Web : http://www.jvprod.fr !

  14. #14
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2004
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Bonsoir, oui lire les message reçu plutôt et les faire defiler de bas en haut

  15. #15
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2007
    Messages : 247
    Points : 276
    Points
    276
    Par défaut
    slt,

    ton code php lit les message au chargement... mais après, à aucun moment tu redemandes d'aller chercher les messages pour actualiser...
    Conception et hébergement de votre site Web : http://www.jvprod.fr !

  16. #16
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2004
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    sorry tes vraiment balaise en ajax toi dis serais tu me dire les changement a faire merci d'avance cela serais sympa et comme cela j'apprends a faire les modification aussi cela est gentis

Discussions similaires

  1. [AJAX] Fonction $.ajax qui ne répond pas
    Par sub_zero dans le forum jQuery
    Réponses: 2
    Dernier message: 16/01/2015, 12h18
  2. Startx ne fonction pas si .xsession est présent
    Par anti-conformiste dans le forum Applications et environnements graphiques
    Réponses: 7
    Dernier message: 28/01/2006, 10h43
  3. CSS: cursor:hand; ne fonction pas avec Netscape/firefox
    Par pierrot10 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 26/09/2005, 11h12
  4. Javascript qui ne fonctione pas partout
    Par nad dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 22/11/2004, 17h51
  5. gethostbyaddr ne fonctione pas?
    Par Pope dans le forum Réseau/Web
    Réponses: 2
    Dernier message: 08/10/2004, 04h53

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