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] Refresh automatique


Sujet :

JavaScript

  1. #1
    Membre du Club
    Profil pro
    Responsable administration fonctionnelle SAP
    Inscrit en
    Octobre 2003
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Responsable administration fonctionnelle SAP
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2003
    Messages : 60
    Points : 59
    Points
    59
    Par défaut [AJAX] Refresh automatique
    Bonjour à tous,

    Je suis en de travailler sur un 1 tp où je dois développer un mini-chat...
    J'ai un problème sur le drefresh automatique de ma page, je m'explique je voudrais rafraichir que le haut de ma page où il y a la visu des messages... et pas la partie où on les poste... qui pourrait m'aider???

    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
    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
    include("include/param_global.php");
    include("include/action_msg.php");
     
    include("include/titre.php");
     
     
    // Requête pour récupérer les données du client sélectionné
    // $sql_client = "SELECT * FROM clients where numero=".$_GET["numero"]."";
    // $query=@mysql_query($sql_client);
    // $client = mysql_fetch_array($query);
     
     
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
     
        <head>
            <link href="css/style.css" rel="stylesheet" type="text/css" />
            <title>
                 chat
            </title>
              <meta http-equiv="refresh" content="5" />
           <script type="text/javascript" src="script/verif_formulaire.js"></script>
     
            <style type="text/css">>
     
                 body {background-image:url("images/filigrane.jpg")}
                 a:link { text-decoration:none; color:#333399; }
                 a:visited { text-decoration:none; color:#518BF7; }
                 a:hover { text-decoration:none; color:#FF9900; }
                 a:active { text-decoration:none; color:##333399; }
     
     
     
            </style>
     
        </head>
     
        <body>
     
    <?php
     
    // Maintenant on doit récupérer les 10 dernières entrées de la table
    // On se connecte d'abord à MySQL :
    	   $connexion = mysql_connect("",$G_Admin,$G_Password_Admin);
            mysql_select_db("$G_DB",$connexion) ;
    //mysql_connect("nom_du_serveur", "nom_de_l'utilisateur", "mot_de_passe");
    //mysql_select_db("nom_de_votre_bdd");
     
    // On utilise la requête suivante pour récupérer les 10 derniers messages :
    //$reponse = mysql_query("SELECT * FROM chat_message ORDER BY ID_msg ASC LIMIT 0,10");
    $reponse = mysql_query("SELECT t1.*, t2.login FROM chat_message as t1 INNER JOIN chat_user as t2 ON t1.id_user=t2.id_user order by id_msg ASC");
     
    // On se déconnecte de MySQL
    //mysql_close();
     
    // Puis on fait une boucle pour afficher tous les résultats :
    while($donnees = mysql_fetch_array($reponse))
    {
    ?>
     
    <p><?php echo$donnees['login']; ?> : <?php echo $donnees['texte']; ?></p>
     
     
     
    <?php
    }
    // Fin de la boucle, le script est terminé !
    ?>
            </form>
        </body>
    </html>
     
     
    <form name="formulaire" action="message_post.php" method="post" onsubmit="javascript:return VerifClientFormulaire()">
     
    Votre message : <input type="text" name="message" /><br />
    <input type = "submit" name="action" value = "Envoyer" />
    </form>

  2. #2
    Membre habitué
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2007
    Messages
    112
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2007
    Messages : 112
    Points : 157
    Points
    157
    Par défaut
    Eih, juste une question, c'est une blague ou tu attends vraiment une réponse ???

    Si tu attends une réponse, il aurait quand même mieux valu poster ça en Ajax, où les gens seront plus à même de te répondre !!

    Parce que dans cette section, poster un code à 75% PHP avec une demande qui ne releve pas du HTML, tu ne risque pas d'avoir beaucoup de réponse !!

  3. #3
    Membre du Club
    Profil pro
    Responsable administration fonctionnelle SAP
    Inscrit en
    Octobre 2003
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Responsable administration fonctionnelle SAP
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2003
    Messages : 60
    Points : 59
    Points
    59
    Par défaut
    je l'ai posté ici car pour moi cela relève du HTML... c'est ma balise meta qui rafraichi... il n'y pas de pHP pour mon refresh mais bon je vais le poster sur un autre forum alors...

    bonne soirée

  4. #4
    Membre habitué
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2007
    Messages
    112
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2007
    Messages : 112
    Points : 157
    Points
    157
    Par défaut
    Ta balise meta va rafraichir toute ta page.

    Le rafraishissement de seulement une partie de ton code, c'est typiquement de l'ajax !!!

    Enfin, tu as dit que tu ne voulais rafraichir que la partie du haut ou alors j'ai mal compris !

  5. #5
    Membre du Club
    Profil pro
    Responsable administration fonctionnelle SAP
    Inscrit en
    Octobre 2003
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Responsable administration fonctionnelle SAP
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2003
    Messages : 60
    Points : 59
    Points
    59
    Par défaut
    Oui c'est bien ça je veux rafraichir que le haut...
    mais je ne connais pas l'ajax...

  6. #6
    Membre habitué
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2007
    Messages
    112
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2007
    Messages : 112
    Points : 157
    Points
    157
    Par défaut
    Pour faire simple (désolé pour les puristes, mais on fait simple vu qu'il ne connait pas) va te permettre de récupérer des infos à partir d'un fichier xml de ton serveur au moment ou tu le décides dans ton script JS.

    Libre à toi de générer ce fichier xml par du php !!!

    Je te laisse consulter les tutos du site, c'est un peu galère au début, mais une fois que tu auras pris la main, et c'est assez rapide, tu va voir de nouvelles possibilités s'ouvrir à toi !

  7. #7
    Membre du Club
    Profil pro
    Responsable administration fonctionnelle SAP
    Inscrit en
    Octobre 2003
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Responsable administration fonctionnelle SAP
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2003
    Messages : 60
    Points : 59
    Points
    59
    Par défaut
    ok je vais voir... mais avec les frames ça peut pas marcher???

  8. #8
    Membre habitué
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2007
    Messages
    112
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2007
    Messages : 112
    Points : 157
    Points
    157
    Par défaut
    Si, mais perso, loin de te le conseiller ...

  9. #9
    Membre actif
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 152
    Points : 209
    Points
    209
    Par défaut
    Salut,

    Un petit morceau de code qui te sera utile
    fichier .js
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    window.onload = init;
     
    function init()
    {
        intervalID = setInterval(getData, 20000);
    }
     
    function getData()
    {
        document.getElementById("chat").innerHTML += "<b>User 1</b>: Salut!<br />";
    }
    fichier .html (ou php, peu importe)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ...
    <div id="chat"></div>
    ...
    Sinon évitez de générer de l'xml quand ce n'est pas indispensable. Le code est souvent beaucoup trop lourd. Et ceci est encore plus vrai pour un chat.
    Sachant que le serveur va devoir récupérer/renvoyer des données sans interruption à interval régulier. Moins il aura d'informations à renvoyer aux clients, plus nombreuses seront les chances de ne pas avoir de problèmes. Pour plus de détails, je t'invite à aller faire un tour sur ce post

    Dernier point, je te déconseille de stocker les conversations dans une base de données. Tout doit être géré à la volée.
    Enfin tu me diras qu'en php tu n'as pas trop le choix, vu qu'il n'est pas possible de créer des variables d'application.

  10. #10
    Membre du Club
    Profil pro
    Responsable administration fonctionnelle SAP
    Inscrit en
    Octobre 2003
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Responsable administration fonctionnelle SAP
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2003
    Messages : 60
    Points : 59
    Points
    59
    Par défaut
    Bonjour,

    merci beaucoup pour tout , je vais m'y mettre!
    et pour les tables je les aies céées,

    merci encore

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

Discussions similaires

  1. [AJAX] Update automatique de champs tableau
    Par cic_flo dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 23/10/2006, 16h59
  2. [AJAX] saisie automatique en rapport avec des données mysql
    Par redwire dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 01/10/2006, 11h45
  3. [AJAX]Refresh d'un élément
    Par Shadow69 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 14/02/2006, 18h16
  4. [MySQL] Refresh automatique d'une date
    Par glloq8 dans le forum PHP & Base de données
    Réponses: 17
    Dernier message: 21/10/2005, 10h16
  5. Melange de formulaire, popup, refresh automatique
    Par reseau-emploi dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 06/02/2005, 11h12

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