Allora sto facendo un'applicazione in AJAX, questo è una delle funzioni Javascript che modificano la pagina:
codice:
 function getWelcomeMsg(lang, i) { 
			var mozillaFlag = false; 
			var XMLHttpRequestObject = false; 
				if (window.XMLHttpRequest) { 
					XMLHttpRequestObject = new XMLHttpRequest(); 
					XMLHttpRequestObject.overrideMimeType("text/xml"); 
					mozillaFlag = true; 
				} else if (window.ActiveXObject) { 
					XMLHttpRequestObject = new 
					ActiveXObject("Microsoft.XMLHTTP"); 
				} 
				if (XMLHttpRequestObject) { 
					XMLHttpRequestObject.open("GET", "quest.php", true); 
					XMLHttpRequestObject.onreadystatechange = function() { 
						if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) { 
							var xmlDocument = XMLHttpRequestObject.responseXML; 
							if(mozillaFlag) { 
								removeWhitespace(xmlDocument); 
							} 
		
							displayMsg(xmlDocument, lang, i); 
						} 
					} 
		
					XMLHttpRequestObject.send(null); 
				} 
		}
quest.php è un file PHP con il MIME type forzato a file xml, preleva delle info da un DB e le mostra come XML:
codice:
	<date>
            <citta>Faenza </citta>
            <luogo>Piazza Italia</luogo>
            <citta>Pisa</citta>
            <luogo>Corso Garibaldi</luogo>
        </date>
e il file PHP che crea questo output è una cosa del tipo:
Codice PHP:
<?
header
('Content-Type: text/xml');
echo 
'<?xml version="1.0" encoding="ISO-8859-1"?>';

$server "";
$user "";
$pass "";
$db_name "";

    
$db = @mysql_connect($server$user$pass) or die ("Connessione non effettuata...");
    
mysql_select_db($db_name$db) or die ("Errore nella selezione...");

    
$query "SELECT citta, dove FROM events";
    
$exec mysql_query($query) or die("Errore nella query!");

echo 
"<date>";
while(
$row mysql_fetch_array($exec)) {
            echo 
"<citta>".$row['citta']."</citta>";
            echo 
"<luogo>".$row['dove']."</luogo>";
        }
echo 
"</date>";
?>
.

Inoltre c'è una pagina HTML che scorre tra i risultati del file XML, sfruttando la chiamata asincrona JS.

Se in questa pagina HTML sto al primo record Faenza, clicco avanti e mi viene mostrato Pisa. E questa cosa è ottima, proprio il funzionamento che volevo Se però mentre sto visualizzando il primo record Faenza, nel DB modifico Pisa in Pisa2, quando clicco avanti nella pagina HTML il prossimo risultato è Pisa2, quindi ad ogni avanzamento il file XML viene ricreato, come posso fare per tenerlo in cache ed usare sempre quello???

Spero che non andava postato in Javascript