par
haugure » 18 févr. 2005, 15:03
Salut,
Déjà je pense que tu t'en doute mais ton code ne peu pas fonctionner ^^
voici la ligne incriminé :
echo "<script>\nfunction doRefresh(){window.setTimeout(\"location.href='script1.php';\",1000);}\n </script>\n";
Comment tu veux arréter un timeout qui n'est pas déclaré ?!?
Ensuite cette ligne la ne sert a rien du tout à part prendre des octets pour rien:
echo "<input type='button' value='STOP' onClick='windows.clearTimeout(window.setTimeout(\"location.href='script1.php';\",1000););'>";
windows.clearTimeout(window.setTimeout ? Tu déclare un timeout que tu efface directement ok mais ce n'est pas le meme que celui qui rafraichi ta page et c'est bien la ton problem !
Pour te donner un exemple concret et que tu comprene pkoi ca fonctionne pas prend l'exemple suivant en php :
include("connexion.php");
mysql_query("select * from table");
mysql_free_result(mysql_query("select * from table"));
include("close_connexion.php");
Syntaxiquement tout est juste mais en réalité ce code ne sert a rien du tout pour corriger ton probleme il faut déclarer une variable qui prendra la valeur de ton timeout comme prendrai la valeur de la requette ton $res en php à quelque nuance pret :
Code : Tout sélectionner
//Declaration en global
var t=0;
doRefresh(){
t = window.setTimeout("location.href='script1.php';",1000);
}
stopRefresh(){
clearTimeout(t);
}