Bonjour,
Je fais mes premiers pas avec AJAX, mais je suis familier de PHP/MySQL (et à peu près de Javascript également).
J'ai une base de données qui contient environ 10 000 observations, et j'essaye de faire une requête toute simple pour afficher une variable de ces observations dans un div.
Concrètement, j'ai trois fichiers :
1. Un index.html qui contient un
<div id="affichage"></div> |
2. Un ficher loadObservations.php qui contient essentiellement :
while($obs = mysql_fetch_array($query){
echo $obs['variable'] . "\n";
}
|
2. Un script.js qui contient une variable xhr pointant vers un XMLHttpRequest standard et (notamment) deux fonctions :
loadObs(){
if (xhr.readyState == 4 || xhr.readyState == 0) {
xhr.open("GET", 'loadObservations.php', true);
xhr.onreadystatechange = handleObs;
xhr.send(null);
}
} |
et
function handleObs(){
if (xhr.readyState == 4) {
var listOfObs = xhr.responseText.split("\n" );
if (listOfObs.length > 1) {
for (i = 0 ; i < listOfObs.length - 1 ; i++){
document.getElementById("affichage" ).innerHTML +=
"<p>" + listOfObs[i] + "</p>\n";
}
}
}
} |
Ça marche sans problème quand il y a jusqu'à une centaine voire un millier de résultats. Après il n'arrive plus à suivre.
Je fais tourner tout ça en local avec un serveur MAMP.
Des idées, des conseils ?
Merci !
Message édité par ArnaudR le 17-04-2012 à 14:30:18