Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Evitare salvataggio cache con ajax

    Salve,

    io ho preparato un codice che viene ricaricato ogni 5 secondi e che mi da una risposta diversa a ogni ricaricamento. Come posso fare in modo che il borwser non salvi la cache, perchè altrimenti ho sempre la stessa risposta? Il codice in questione è questo

    codice:
    function load()
    {
    var xmlhttp;
    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)
        {
       var result = xmlhttp.responseText;
       var attuale = '$accounts';
       if (result == attuale){
      
       }
       else {
       location.reload()
       }
    }
    }
    xmlhttp.open('GET','accounts.txt',true);
    xmlhttp.send();
    }
    window.setInterval('load();','2000');

  2. #2
    ovviamente $accounts proviene da una richiesta php

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Prova cosi:
    codice:
    function load()
    {
    var xmlhttp;
    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)
        {
       var result = xmlhttp.responseText;
       var attuale = '$accounts';
       if (result == attuale){
      
       }
       else {
       location.reload()
       }
    }
    }
    xmlhttp.open('GET','accounts.txt?noCache='+ Math.floor(Math.random() * (9999)),true);
    xmlhttp.send();
    }
    window.setInterval('load();','2000');
    Io ricontrollerei anche la variabile attuale forse deve essere cosi var attuale = '<? echo $accounts; ?>';
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    Grazie,

    il tuo codice ha funzionato. Il codice come era prima funzionava già su tutti i borwser tranne che su internet explorer perchè salvava il risultato nella cache. Per quanto rigurarda il php, tutto quel codice era già inserito in un foglio php che poi veniva stampato con echo.

    Grazie Mille

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.