| 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: 15 let
|
|||
0