setinterval gondok
Adott az alábbi kód, amiben a setInterval csak egyszer hajtódik végre:a $.post jquery parancsban ez hívódik meg:A jquery tökéletesen működik, az iro.php hozzá is fűzi a dolgot a textfile.txt-hez, de azonban csak egyszer, tehát nem fut le egynél többször a setinterval. Valakinek valami ötlete?
Mondjuk a kimeneti fájlban 2 órával korábbi időpontot jelez, de gondolom ez nem jelentheti a gond forrását. Köszönöm előre is. További szép napot! :)
■
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(document).ready(function(){
setInterval($.post("iro.php", {i1: 5}), 4000);
});</script>
</head>
<body>
<?php
print("CSŐ!");
?>
</body>
<?php
$phpVar = $_POST["i1"];
$f = fopen("textfile.txt", "a");
fwrite($f, date("d/m/y : H:i:s", time()) . " " . $phpVar . "\n" );
fclose($f);
?>
Mondjuk a kimeneti fájlban 2 órával korábbi időpontot jelez, de gondolom ez nem jelentheti a gond forrását. Köszönöm előre is. További szép napot! :)
callback
setInterval
egy függvényt vár első paraméternek, de te a$.post
visszatérési értékét adod át neki első paraméternek. Átfogalmazva: neked egy függvény referenciát kell átadnod asetInterval
-nak, de te egy függvény futásának eredményét adod vissza. És mivel nem egy függvényt adsz át asetInterval
-nak, ezért az nem is fog meghívódni többször. Ami a te általad felírt kódban történik:$.post
függvényt a"iro.php"
és{i1: 5}
paraméterekkel.$.post("iro.php", {i1: 5})
futásának az eredményét asetInterval
-nak.Hogyan lehet átadni egy függvényt paraméterként egy másik függvénynek? Többek között erről is olvashatsz JavaScript függvények című cikkemben, itt a Weblaboron.
setInterval($.post("iro.php",