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] Rafraîchissement Auto Requête SQL par AJAX


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Amateur
    Inscrit en
    Juin 2015
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Amateur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2015
    Messages : 1
    Par défaut [AJAX] Rafraîchissement Auto Requête SQL par AJAX
    Bonjour à tous, j'ai ici un script de PHP/Ajax qui rafraîchit une variable PHP grâce à Ajax par le rafraîchissement d'une requête et celle ci fonctionne mais le problème est que ça rame grave quand je lance ce code sur le serveur. Donc est ce que j'ai fait une erreur qui demande trop de ressources ?

    Mon HTML :
    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
    <html> 
    <head> 
    <title>Exemple</title> 
    <script type="text/javascript"> 
    function ajax(){ 
    var xhr=null; 
    if (window.XMLHttpRequest) { 
    xhr = new XMLHttpRequest(); 
    } 
    else if (window.ActiveXObject){ 
    xhr = new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    //on définit l'appel de la fonction au retour serveur 
    xhr.onreadystatechange = function() { affichage(xhr); }; 
    //on appelle le fichier reponse.txt 
    xhr.open("GET", "autre.php", true); 
    xhr.send(null); 
    } 
    function affichage(xhr){ 
    var docXML= xhr.responseXML; 
    var items = docXML.getElementsByTagName("donnee") 
    //on fait juste une boucle sur chaque element "donnee" trouvé 
    for (i=0;i<items.length;i++){ 
    document.getElementById("bip").innerHTML = items.item(i).firstChild.data; 
    var timer=setInterval(ajax, 5000); 
    } 
    } 
    </script> 
    </head> 
    <body onload="javascript:ajax();"> 
    <div id="bip"></div> 
    </body> 
    </html>
    Puis mon appel requête (autre.php) :

    Code php : 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
    <?php 
    header('Content-Type: text/xml'); 
    echo "< ?xml version=\"1.0\"? >\n"; // L'espace est pour la coloration syntaxique
    echo "<exemple>\n"; 
    $user="####"; 
    $host="####"; 
    $password="####"; 
    $database="####"; 
    $v = 0; 
    $cxnvisit = mysqli_connect($host, $user, $password, $database) or die ("Etape 1 : Connexion impossible au serveur"); 
    $sqlvisit = "SELECT * FROM visite WHERE visiteur='$var1' and visiter='$var2'"; 
    $resultvisit = mysqli_query($cxnvisit,$sqlvisit) or die ("Requete en echec region"); 
    while($row = mysqli_fetch_row($resultvisit)) { 
    $idvisite = $row[0]; 
    $v = $v + 1; 
    } 
    echo "<donnee>" . $v . "</donnee>\n"; 
    echo "</exemple>\n"; 
    ?>

    Ai-je fais une erreur pour que cela rame autant ?

    Merci par avance

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 207
    Par défaut
    Bonjour,
    ...mais le problème est que ça rame grave quand je lance ce code sur le serveur.
    il semblerait donc que cela soit du coté de ton code PHP que le problème ce situe.

    Je me pose quand même une question quant à l'opportunité de faire un appel Ajax au chargement, pourquoi ne pas réaliser le HTML directement, ensuite retourner un XML pour le démonter coté client me semble bien moins efficace que le retour d'une chaine au format JSON.
    Dernier point il est plus efficace (et de deux) de ne faire qu'un echo en retour lors d'une requête.

Discussions similaires

  1. Réponses: 2
    Dernier message: 10/03/2012, 21h03
  2. [AJAX] Afficher résultat requête SQL avec ajax
    Par Kevfou dans le forum AJAX
    Réponses: 2
    Dernier message: 01/11/2011, 16h54
  3. [AJAX] Requête SQL avec AJAX
    Par Nanais19 dans le forum AJAX
    Réponses: 5
    Dernier message: 11/07/2011, 16h58
  4. [AJAX] SQL par AJAX sans PHP
    Par berjaoui dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 30/05/2008, 01h35
  5. [AJAX] Exécuter une requête SQL des la checkbox cochée
    Par dje064 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 31/05/2007, 11h25

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