Autor Zpráva
tom44
Profil *
V exploreru se snažím z xml souboru vytáhnout dynamická data, která po 1s refreshem obnovuju. Poprvé se mi data načtou, poté se jen stránka obnovuje , ale data jsou stejná. Po restartu exploreru opět poprvé načte správná data, dál to zase nefunguje. Poradí někdo??? Díky.


<html>
<head>
<meta http-equiv="Content-Language" content="cs">
<meta http-equiv="refresh" content="1"/> 
<body>

<script type="text/javascript">
if (window.XMLHttpRequest)
  {
  xhttp=new XMLHttpRequest();
  }
else 
  {
  xhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xhttp.open("GET","http://192.168.1.250/xml.xml",false);


xhttp.send()

xmlDoc=xhttp.responseXML;

document.write(xmlDoc.getElementsByTagName("uptime")[0].childNodes[0].nodeValue + "<br />");
document.write(xmlDoc.getElementsByTagName("impT0")[0].childNodes[0].nodeValue + "<br />");
document.write(xmlDoc.getElementsByTagName("impT1")[0].childNodes[0].nodeValue)
document.write("konec ().");
document.write("<br />");

</script>

</body>
</html>

Moderátor Davex: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
_es
Profil
tom44:
dynamická data, která po 1s refreshem obnovuju.
Prečo po jednej sekunde?
Čo ak sa za sekundu načítať nestačia?
Prečo zbytočne preťažuješ prehliadač, server, aj sieť?
Zrušením asynchrónneho stiahnutia spôsobíš zablokovanie ovládania stránky do stiahnutia súboru - alebo do timeoutu.

poté se jen stránka obnovuje , ale data jsou stejná.
Viď tu.
tom44
Profil *
Načítám spotřebu elektriky, teploty na kolektorech atd, proto chci aktuální data po 1 s. Je to po místní LAN , vždy se dokáží do 1 s načíst. Mohl by jsi mě nakopnou dál, jsem úplný laik...Budu vděčen.
_es
Profil
tom44:
Máš tam odkaz, stačí ti prečítať to vlákno.
Ďalej: Netreba ti opakovane načítavať celú stránku, stačí opakovane načítavať ten xml súbor a cez JS ho vypisovať do stránky.
Funkčných skriptov je nájditeľných dosť, napríklad Univerzální funkce pro AJAX.
tom44
Profil *
Díky, odkazy jsem všetky prečítal. Pochopil jsem, že díky keši nedostanu aktuální data, pochopil jsem , že ani no-cache v metě nefunguje. Pročetl jsem i Univerzální funkce pro Ajax, 10 hodin jsem s tím laboroval a bez úspěchu.
Jak mohu generovat náhodný název xml souboru? U php souboru se asi vždy něco nalouduje , ale u xml nedokážu nic otevřít. Jak zemezit kešování a nebo jak jednoduše dostat z dynamického xml souboru v místní síti pár hodnot do sidebaru ve W7?? Věnuj mi ještě minutu a poraď. Díky.
_es
Profil
tom44:
Jak mohu generovat náhodný název xml souboru?
Len náhodnú časť za otáznikom, asi by to malo fungovať aj v prípade pseudostatického súboru.
Teda namiesto súboru "xml.xml" skús načítať súbor "xml.xml?r=" + Math.random()
tom44
Profil *
Tak bohužel, soubor nenalezen. Podobné xml.xml je na http://85.207.251.59:1013/xml.xml, z podobného, ale v místní síti, si chci udělat gadget do W7. A trápím se a trápím. Kdyby tě něco napadlo....
_es
Profil
tom44:
Tak bohužel, soubor nenalezen.
Asi záleží od nastavenia servera, či tú časť za otáznikom bude pri obyčajných súboroch ignorovať, henten to neignoruje.
Skús sa ešte inšpirovať v tomto príspevku a nastavovať premenlivo nejakú HTTP hlavičku pomocou metódy setRequestHeader.
Bob.M.
Profil *
Já jsem něco podobného řešil asi před půl rokem a nezvládnul jsem to. Nepovažuju se za amatéra, ale zkrátka jsem to nevymyslel. Takže pro tom44 - pokud to zvládneš ,pošli zprávu, rád to od tebe okopíruju.
pavel*
Profil *
Pokud to máš mimo doménu a nemůžeš měnit název souboru za otazníkem, tak to zkrátka v IE nedokážeš udělat. V jiných prohlížečích to uděláš pouze ve stejné doméně.
_es
Profil
pavel*:
Píšeš od veci, v tej časti adresy za otáznikom nešlo o prehliadač ale o server a na to o rovnakej doméne stačilo prečítať všetky príspevky.

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:

0