Perte de paramètres lors d'un refresh
bonjour,
Connaissant bien plus php , que javascript/ajax je rencontre un problème lors du passage de paramètres lors du refresh d'une page avec paramètre.
j'ai besoin de rafraichir une page php toute les 2 secondes en évitant le clignotement de refresh
sans utiliser mes refresh basé sur php du type :
Code:
header("Refresh:30; url=view.php?galgal=$galgal&pseudo=$pseudo&nbmaximag=$nbmaximag&site=$site");
j ai donc utilisé : ( je me suis basé sur un exemple trouvé sur le web)
page principale :
Code:
1 2 3 4 5 6 7 8
| <header>
<script src="./common/jquery.js"></script>
<script src="./common/ordon.js"></script>
</header>
...
<body onload='refresh_div();'>
...
<td valign="top"><div id="ordon" width="800" height="700" ></div></td> |
ficher de fonction javascript :
Code:
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 34 35
| function refresh_div()
{
var xhr_object = null;
xhr_object = new XMLHttpRequest();
var method = 'GET';
var filename = './common/ordon.php';
xhr_object.open(method, filename, true);
xhr_object.onreadystatechange = function()
{
if(xhr_object.readyState == 4)
{
var tmp = xhr_object.responseText;
document.getElementById('ordon').innerHTML = tmp;
}
}
xhr_object.send(null);
setTimeout('refresh_div()', 2000);
} |
Tel quel ca marche , ma page se rafraichi bien toute les 2 secondes sans clignotement.
Mais mon problème est que je doit passer des paramètres a ma page nommé "ordon.php" .
Donc il ne faut pas que celle ci soit défini dans la fonction, mais passé en paramètre
J'ai donc modifié ma page principale pour passer l'url a la fonction tel que suis :
Code:
<body onload='refresh_div("./common/ordon.php?param=<?php echo $param ; ?>");'>
et dans mon fichier de script j ai changé :
Code:
1 2 3 4 5 6
| function refresh_div(myurl)
...
var filename = myurl;
... |
mon soucis est qu au permier chargement de la page principale ca marche mais qu'il perd la valeur "myurl" après le premier refresh
dans la console de chrome j ai une erreur 404:
"GET http://127.0.0.1/mysite/undefined"
alors que je devrais avoir quelque chose du type
"GET http://127.0.0.1/mysite/common/ordon.php?param=xxx"
j'aimerais savoir comment faire pour repasser mes paramètres en GET lors du refresh
EDIT :
je suppose qu'il faut faire des modifs du coté de
Code:
1 2 3
| xhr_object.send(null);
setTimeout('refresh_div()', 2000); |
j ai essayé différentes syntaxes
Code:
1 2 3
| setTimeout('refresh_div(myurl)', 2000);
setTimeout('refresh_div('myurl')', 2000);
setTimeout('refresh_div('.myurl.')', 2000); |
mais je n'arrive pas a trouver la bonne syntaxe
merci d'avance