Autor | Zpráva | ||
---|---|---|---|
Jaroslavv Profil * |
#1 · Zasláno: 18. 2. 2011, 14:55:10
Ahoj, ejsem žádný programátor proto se obracím na zde zkušené odborníky. Potřeboval bych načíst v JS jednu hodnotu ze souboru.php a tu každou sec. odpočítávat. Až bude výsledek 0 spustit soubor start.php. Najde se někdo? Děkuji za pomoc, Jarda
|
||
_es Profil |
#2 · Zasláno: 18. 2. 2011, 16:24:31
Jaroslavv:
„Potřeboval bych načíst v JS jednu hodnotu ze souboru.php“ Hľadaj AJAX. „tu každou sec. odpočítávat.“ Ak si tou hodnotou myslel celé číslo a odpočítavaním myslel zmenšovanie o 1, tak: // Z AJAXu je načítaná premenná i var t = setInterval(function(){if(i-- === 0){clearInterval(t); spusti start.php;}}, 1000); „Až bude výsledek 0 spustit soubor start.php.“ Čo v tvojom ponímaní znamená „spustiť súbor start.php“ už vyveštiť neviem. |
||
Witiko Profil |
#3 · Zasláno: 18. 2. 2011, 16:31:39 · Upravil/a: Witiko
Vyžádání php souboru provedeš pomocí technologie zvané Ajax.
window.onload = function() { var žádost, timeout = 30000, timeoutId, init = function(soubor) { žádost.open("GET", soubor, true); žádost.send(null); }; if(window.XMLHttpRequest) žádost = new XMLHttpRequest(); else if(window.ActiveXObject) žádost = new ActiveXObject("Microsoft.XMLHTTP"); else return; žádost.onreadystatechange = function() { if(žádost.readyState === 4 && žádost.status === 200) { clearTimeout(timeoutId); setTimeout(function() { žádost.onreadystatechange = function() { if(žádost.readyState === 4 && žádost.status === 200) clearTimeout(timeoutId); }; timeoutId = setTimeout(function() { žádost.abort(); init("start.php"); }, timeout); init("start.php"); }, Number(žádost.responseText) * 1000); } }; timeoutId = setTimeout(function() { žádost.abort(); init("soubor.php"); }, timeout); init("soubor.php"); } _es: „Ak si tou hodnotou myslel celé číslo a odpočítavaním myslel zmenšovanie o 1“ Myslím, že to bude totožné se zápisem: setTimeout(function(){...}, i * 1000); „Čo v tvojom ponímaní znamená ‚spustiť súbor start.php‘ už vyveštiť neviem.“ Tipuji načíst php soubor bez využívání případných navrácených dat za účelem provedení změn(y) na straně serveru. - Fire'n'forget :-) PS: Jsem jediný, kdo by rád používal v kódu komentáře? Protože jush se s nimi viditelně nerad. |
||
_es Profil |
#4 · Zasláno: 18. 2. 2011, 16:47:14 · Upravil/a: _es
Witiko:
„Myslím, že to bude totožné se zápisem“ Vlastne áno, len to bude i*1000 .
Konštrukcia (XMLHttpRequest || ActiveXObject) je nesprávna, ak prehliadač nepodporuje objekt XMLHttpRequest , tak tento výraz spôsobí chybu a ukončenie kódu, pokus o získanie ActiveX objektu nenastane.
Aj tam sa obávam, že si Jaroslavvov dotaz nevyveštil celkom správne, to odpočítavanie po sekunde tam neviem dešifrovať, nech už to znamená hocičo. V princípe je asi lepšie trvať najprv na upresnení a doplnení dotazu, než tipovať výklad vágnych termínov v dotaze a vyrábať hneď kompletný skript. |
||
Witiko Profil |
#5 · Zasláno: 18. 2. 2011, 17:19:22
_es:
Opraveno. |
||
Časová prodleva: 13 let
|
0