[DHTML] bepaalde waardes refreshen

Pagina: 1
Acties:

  • Crysania
  • Registratie: September 2000
  • Laatst online: 17-09 08:05
ik ben nu op stage en ik heb een probleem, ik moet een html bestand maken waarin gegevens komen te staan die een machine de hele tijd genereerd. Er is al een programma in C geschreven dat die waardes op kan halen. Het probleem is dat een hele pagina lang duurt met refreshen en dat ik heb gehoort dat je met DHTML layers kan maken en dan bijvoorbeeld 1 layer refresht en de rest kan laten staan.
klopt dit of moet je functies maken die die waardes ophalen.

  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

  • Waar moeten de waarden opgehaald worden? Op een server of is het allemaal client-side?
  • In welke browsers moet het werken?
[brainstorm]
Voor IE only kan je misschien wat doen met client-side vbscript en dan wat spelen met een xmlhttp objectje.

Andere optie is een pagina met 2 frames (eentje 'hidden'). Werkvlak toont gegevens, hidden frame haalt periodiek een aantal gegevens op. Werkvlak leest gegevens uit hidden frame in en herschrijft een layer met deze gegevens.

NS heeft de <layer> tag waar een document aan gekoppeld kan worden en deze kan je waarschijnlijk wel via javascript wijzigen.
[/brainstorm]

succes

Today's subliminal thought is:


  • Crysania
  • Registratie: September 2000
  • Laatst online: 17-09 08:05
de informatie moet dus op de server gehaald worden, ik ben van plan op de server een programmatje in C te maken wat die info de hele tijd in een bepaald bestand zet, en dat moet ik dus uitlezen. gaat dit met javascript?? waardes uitlezen uit een bestand op een server?

de browser is trouwens gewoon internet explorer

  • dmnq
  • Registratie: Januari 2000
  • Laatst online: 16-09 13:29

dmnq

zonder klinkers

IFRAME

Hosting (100 MB Harddisk, 1 GB Traffic, 5 POP, MySQL, PHP voor € 3,60 per maand)


  • kvdveer
  • Registratie: November 2000
  • Laatst online: 06-11-2025

kvdveer

Z.O.Z.

IFrame is denk ik de beste oplossing, maar die is niet compatible moet met ns4. Daarvoor moet je ILayer gebruiken.

Overigen weten ze daar bij webscripting meer van...

Localhost, sweet localhost


  • Banpei
  • Registratie: Juli 2001
  • Laatst online: 16-09 08:48
de informatie moet dus op de server gehaald worden, ik ben van plan op de server een programmatje in C te maken wat die info de hele tijd in een bepaald bestand zet, en dat moet ik dus uitlezen. gaat dit met javascript?? waardes uitlezen uit een bestand op een server?
Even voor de duidelijkheid: JavaScript is Client-side, dus zomaar ergens plaatsen op je server is er niet bij... Dan moet je het in de wwwroot zetten zodat je er wel bij kan. Met javascript kan je het wel opvragen, maar het is niet erg gemakkelijk...

Is het misschien makkelijker om dit in ASP of VB te doen?

  • Crysania
  • Registratie: September 2000
  • Laatst online: 17-09 08:05
ik zag dat er ook een "open" functie was waarmee je bestanden kan openen. Dit lijkt mij makkelijker aangezien het daar volgens mij toch voor is gemaakt.

ik zal ff de zooi over deze functie hier neerplanten:

[functie:]

open method (document object)
Opens a stream to collect the output of write or writeln methods.

Syntax
document.open(["mimeType"])
mimeType specifies any of the following document types:

text/html
text/plain
image/gif
image/jpeg
image/x-bitmap

[/functie]

nog even voor de duidelijkheid. ik hoef alleen te LEZEN met het javascript paginatje, het schrijven doe ik op de server met een ander programma.

Verwijderd

<evangeliemode>dit _moet_ je gewoon doen met een clientside XML objectje...</evangeliemode>

Die schedule je met een settimeout, laat je de data laden vanaf de server. Via een clientside XSL rendering kan je dan HTML maken.. ofzo.

zoiets:
code:
1
2
3
4
5
6
7
8
9
<XML ID="xmlSearch"></XML>

<script language="vbscript">
function schedulemij()
  if xmlSearch.load("bestandjeopserver.xml") then
   updateDIV = render(xmlSearch)
  end if
end function
</script>

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Op woensdag 31 oktober 2001 09:59 schreef THE_CR0SS het volgende:
ik zag dat er ook een "open" functie was waarmee je bestanden kan openen. Dit lijkt mij makkelijker aangezien het daar volgens mij toch voor is gemaakt.

ik zal ff de zooi over deze functie hier neerplanten:

[functie:]

open method (document object)
Opens a stream to collect the output of write or writeln methods.

Syntax
document.open(["mimeType"])
mimeType specifies any of the following document types:

text/html
text/plain
image/gif
image/jpeg
image/x-bitmap

[/functie]

nog even voor de duidelijkheid. ik hoef alleen te LEZEN met het javascript paginatje, het schrijven doe ik op de server met een ander programma.
Ik denk dat je nog een keertje moet lezen wat er staat bij die functie ;)
Het heeft nl. niet zo veel te maken met waar jij mee bezig bent...

Wat je moet doen is een "hidden frame" zoals * Annie al zei aanmaken, waarin je je een door je C programmaatje gegenereerde Javascript zet. Dan zet in het javascript een stukje code waarbij het frame zich om de zoveel tijd refreshed, en zijn data aan een ander frame geeft.

zoiets:
C:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int main ()
{
   FILE *f;
   if ( ( f = fopen ( "wwwroot/js/data.js", "w" ) == NULL ) )
   {
    perror ( "Probleem met javascript schrijven" );
    return -1;
   }
     

   fwrite ( f, "
data = 0; //hier je meuk van data


top.frames[0].data = data;
setTimeout ( 1000, "location.reload()" );
" );
  return 0;
}

index.html:
code:
1
2
3
4
5
<frameset rows="1,*,1">
   <frame src="func.html">
   <frame src="home.html">
   <frame src="data.html">
</frameset>

func.html:
code:
1
2
<script src="js/function.js">
<body bgcolor="#000000">&nbsp;</body>

data.html:
code:
1
2
<script src="js/data.js">
<body bgcolor="#000000">&nbsp;</body>

function.js:
code:
1
2
3
var data;

top.frames[1].getElementByID [ 'contentLayer' ].innerHTML=data;

home.html:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<head>
<style>
#contentLayer {
   position:absolute;
   left:10px;
   top:10px;
   width:100px;
   height:200px;
   font-family:Verdana;
   font-size:11px;
}
</style>
</head>

<body>
<div id="contentLayer">
Dit is dus de layer waar het allemaal in moet gebeuren
</div>
</body>

* drm heeft schudt dit even uit de mouw op de vroege morgen, dus denkt ook niet dat het de oplossing is.

Sterker nog, ik denk dat er een hoop fouten in zitten, maar je hebt nu in ieder geval genoeg materiaal om eventjes in de rondte te kunnen zoeken.
Ik denk dat je het overigens beter gewoon met een database kunt proberen.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • havana
  • Registratie: Augustus 1999
  • Laatst online: 16-09 14:19
Volgens hoort HTML thuis in W&G, dus dat zal voor DHTML ook wel gelden

DIT IS MIJN WEBSITE


  • Crysania
  • Registratie: September 2000
  • Laatst online: 17-09 08:05
ik snap wat je bedoelt, maar kan het niet makkelijker? Ik weet niet of het mogelijk is maar is het mogelijk om met javascript een *.txt bestand te lezen dat op de server staat, dat is eigenlijk nog de enige vraag.

vanaf daar kan ik gewoon die data uit de textfile in variabelen zetten en die writen in een timerfunctie.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Op woensdag 31 oktober 2001 10:55 schreef THE_CR0SS het volgende:
ik snap wat je bedoelt, maar kan het niet makkelijker? Ik weet niet of het mogelijk is maar is het mogelijk om met javascript een *.txt bestand te lezen dat op de server staat, dat is eigenlijk nog de enige vraag.

vanaf daar kan ik gewoon die data uit de textfile in variabelen zetten en die writen in een timerfunctie.
Ik ben wel vrij zeker dat het niet kan, nee. Gezien JavaScript in dit geval puur clientsided is, en javascript als zodanig niet de functionaliteit biedt een text-bestand te openen en uit te lezen.

Dus je zult het vanaf de andere kant moeten benaderen. (zoals mijn voorbeeldje)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Crysania
  • Registratie: September 2000
  • Laatst online: 17-09 08:05
Ik snap het een heel eind met meerdere frames, ik maak dus 2 frames, 1 wordt 1x geladen en noem ik vanaf nu frame A, Dit is het hoofd frame waar alles zichtbaar gemaakt wordt met de hele opmaak en alles erin. Dan hebben we ook nog Frame B, die onzichtbaar is en zich na bijvoorbeeld een seconde refresht, in dit frame staan alle waardes die ik wil laten zien.

In frame A maak ik dan met een javascript een timerfunctie die die waardes om de seconde uit Frame B haalt en op het scherm print.

Op de server maak ik om de 1/2 seconde een nieuwe frame B aan zodat hij nieuwe waardes heeft als hij refresht.

Zou dit zo ongeveer gaan?

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Ik geef je een goede kans :)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1