AJAX, MySQL et données lourdes [Résolu] - HTML/CSS - Programmation
Marsh Posté le 17-04-2012 à 14:19:09
remplace
Code :
|
par
Code :
|
ou plus court :
Code :
|
ou encore plus court avec un replace
Marsh Posté le 17-04-2012 à 14:29:33
flo850 a écrit : remplace
|
Merci, je n'avais pas compris que le problème venait de là. C'est beaucoup plus rapide comme ça en effet
Marsh Posté le 17-04-2012 à 13:38:46
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