Loop med timer ?

Tags:    asp

Hey udviklere..

Jeg har lavet det her nyhedssystem, der læser nogle nyheder fra en tekstfil, hver nyhed er på en linje..

det jeg så gerne ville, var hvis man kunne lave noget så hvert 30 sekund læser den næste linje, osv. og så starter forfra på første linje igen ?

min kode indtil videre :

Fold kodeboks ind/udKode 




8 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 6 karma
Sorter efter stemmer Sorter efter dato
Uden at gå i dybden på dit problem vil jeg sige at jeg ville løse det ved at læse alle linjerne og derefter lade et (klientside) javascript tage sig af at vise de enkelte linjer ved hvert 30'de sekund.

I javascript der kører i browseren er det relativt enkelt at lave en timer der tager sig af dette.

Håber dette hjælper.

/sEi


Det ville være en enkel løsning ja .. Men så vil klienten jo ikke blive informeret i fald der kom nogle nye linjer i filen på serveren. :) Men det kommer jo helt an på hvad behovet er.


Ja, jeg er enig. Men hvis behovet er at KONSTANT checke serveren for nye linier mens brugeren står på den samme side ville jeg vælge en mere avanceret løsning.

Men hvis ikke dette er tilfældet ville jeg bruge noget lignende det som jeg har indsat som kode i min post herover (mens du skrev dit svar!)

Hygge!

/sEi

EDIT:
Skriver lige min indsatte kode her igen - så det er nemmere at hitte:
timerting.asp
Fold kodeboks ind/udKode 




Indlæg senest redigeret d. 15.07.2007 14:35 af Bruger #12142
Har du prøvet at opdatere med ajax?



Du kan ikke anvende en timer i din ASP kode, da den jo afvikles serverside - ikke umiddelbart i hvertfald. Det kan godt lade sig gøre, jeg har lavet noget engang - men det er som sagt ikke lige til og det har en tendens til at tage rigtig hårdt på resourcerne på din server, da du jo vil have 1 åben forbindelse til serveren pr. bruger der ser på din webside og det er ikke umiddelbart det webserveren er bygget til.

Du har ret i at refresh ikke er den smukkeste løsning - du kan alternativt kigge på AJAX, hvis du vil opdatere dynamisk uden at siden laver et såkaldt refresh.



Hvis du skal lave en timer kan du benytte refresh funktionalitet iht. HTTP headers eller du kan indsætte følgende meta information på din ASP side:

Fold kodeboks ind/udKode 


Så vil din ASP side automatisk blive genloadet hvert 30. sekund. Så kan du loade ASP siden i en iframe på din webside.

Det næste du så skal gøre er at sende et linje nummer med i querstring på urlen, så den ved at den skal tage linje x + 1 at læse.

Håber at det var HINT nok til at du selv kan løse resten af opgaven. ;)



jah, det sgu nok den eneste måde at gøre det på..

ville nu helst undlade at den skal refreshe hele tiden



Indlæg senest redigeret d. 13.07.2007 15:40 af Bruger #11231
Uden at gå i dybden på dit problem vil jeg sige at jeg ville løse det ved at læse alle linjerne og derefter lade et (klientside) javascript tage sig af at vise de enkelte linjer ved hvert 30'de sekund.

I javascript der kører i browseren er det relativt enkelt at lave en timer der tager sig af dette.

Håber dette hjælper.

/sEi

EDIT:
Kunne ikke lige lade være med at lave et lille eksempel:
timerting.asp
Fold kodeboks ind/udKode 




Indlæg senest redigeret d. 15.07.2007 14:33 af Bruger #12142
Uden at gå i dybden på dit problem vil jeg sige at jeg ville løse det ved at læse alle linjerne og derefter lade et (klientside) javascript tage sig af at vise de enkelte linjer ved hvert 30'de sekund.

I javascript der kører i browseren er det relativt enkelt at lave en timer der tager sig af dette.

Håber dette hjælper.

/sEi


Det ville være en enkel løsning ja .. Men så vil klienten jo ikke blive informeret i fald der kom nogle nye linjer i filen på serveren. :) Men det kommer jo helt an på hvad behovet er.



Uden at gå i dybden på dit problem vil jeg sige at jeg ville løse det ved at læse alle linjerne og derefter lade et (klientside) javascript tage sig af at vise de enkelte linjer ved hvert 30'de sekund.

I javascript der kører i browseren er det relativt enkelt at lave en timer der tager sig af dette.

Håber dette hjælper.

/sEi


Det ville være en enkel løsning ja .. Men så vil klienten jo ikke blive informeret i fald der kom nogle nye linjer i filen på serveren. :) Men det kommer jo helt an på hvad behovet er.


Ja, jeg er enig. Men hvis behovet er at KONSTANT checke serveren for nye linier mens brugeren står på den samme side ville jeg vælge en mere avanceret løsning.

Men hvis ikke dette er tilfældet ville jeg bruge noget lignende det som jeg har indsat som kode i min post herover (mens du skrev dit svar!)

Hygge!

/sEi

EDIT:
Skriver lige min indsatte kode her igen - så det er nemmere at hitte:
timerting.asp
Fold kodeboks ind/udKode 


Det var lige det jeg skulle bruge.. mange tak :)



t