Autor Zpráva
Návštěvník
Profil *
Možná mi poradíte, potřeboval bych pochopit smysl této funkce:

var newmsg = 0;
function SRA() {
var req = new Ajax();
req.onreadystatechange = function() {
    if (req.readyState == 4) {
        if (req.resp) {
            document.getElementById('newmsg').innerHTML = req.resp.newmsg;
            document.getElementById('newicon').innerHTML = req.resp.icon;
            //document.getElementById('num').innerHTML = req.resp.num;
            if(req.resp.num > newmsg) {
                
            } else document.getElementById('num').innerHTML = '';
            newmsg = req.resp.num;
        }
    }
}
//req.caching = false;
req.open(null, '/dl.php', true);
req.send({ check:'2'});
setTimeout("SRA()",60000)    ;
}
setTimeout("SRA()",60000)    ;

Je to na stránce ve formuláři pro změnu hesla.
preca1
Profil
Zdravim,
po 60 sekundách odešle požadavek, přečte data a případně je zobrazí. Případně anuluje čítač asi nových zpráv. Zajistí, aby se za dalších 60 sekund sejná procedura opakovala znova.
Návštěvník
Profil *
Díky. Takže to vlastně každých 60 vteřin zjišťuje jestli přišly nové zprávy... To ale vypadá, že by se dalo snadno zneužít. Stačilo by přepsat script na

...
setTimeout("SRA()",60000)    ;
}
setTimeout("SRA()",60000)    ;

a server bude za chvíly přetížený...

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: